|
45861
|
NULL
|
0
|
2026-05-14T15:31:17.975891+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778772677975_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_free: deallocating
whisper_backend_init ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:07:17.813880Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:07:25.268127Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=10 elapsed=1.819536167s
2026-05-14T18:07:25.268371Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 10 eligible frames
2026-05-14T18:07:25.824320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.6MB → 0.2MB (4.0x), 5 JPEGs deleted
2026-05-14T18:07:26.273059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.7x), 3 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:09:20.299383Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:11:22.783747Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:12:29.052150Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=2.751484125s
2026-05-14T18:12:29.052294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:13:25.193120Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:15:27.572444Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:17:04.060905Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)
2026-05-14T18:17:04.086797Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2
2026-05-14T18:17:04.289459Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)
2026-05-14T18:17:04.514888Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)
2026-05-14T18:17:04.557979Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)
2026-05-14T18:17:05.242244Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)
2026-05-14T18:17:05.549376Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart
2026-05-14T18:17:05.549451Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-14T18:17:06.308691Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)
2026-05-14T18:17:06.846677Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)
2026-05-14T18:17:06.846824Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)
2026-05-14T18:17:06.846890Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)
2026-05-14T18:17:07.444669Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=374 elapsed=3.00804925s
2026-05-14T18:17:11.045310Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 160.8ms elapsed (expected 5.3ms) → inserting 155.4ms silence (14923 samples)
2026-05-14T18:17:12.775454Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 83.0ms elapsed (expected 5.3ms) → inserting 77.7ms silence (7460 samples)
2026-05-14T18:17:19.588065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4915557953454808779, trigger=visual_change)
2026-05-14T18:17:19.712429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=visual_change)
2026-05-14T18:17:25.869045Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:17:32.516386Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 86.0ms elapsed (expected 5.3ms) → inserting 80.7ms silence (7745 samples)
2026-05-14T18:17:32.920163Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:17:41.655714Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=0 elapsed=12.584709333s
2026-05-14T18:17:41.659296Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=375 elapsed=1.525763459s
2026-05-14T18:19:15.613896Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=383 elapsed=1.089600916s
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:19:38.508186Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:19:45.114427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)
2026-05-14T18:19:55.429434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=visual_change)
2026-05-14T18:19:57.285192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T18:20:28.676631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8971157115277618803, trigger=click)
2026-05-14T18:20:55.977460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1564715759782373567, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:21:41.262468Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:22:46.614239Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=0 elapsed=4.94553125s
2026-05-14T18:22:52.962854Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=392 elapsed=1.0767815s
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:23:45.030577Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:24:19.699073Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.3ms elapsed (expected 5.3ms) → inserting 75.9ms silence (7288 samples)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:25:49.236566Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:27:52.060944Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=17 elapsed=5.421659208s
2026-05-14T18:27:52.061111Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 17 eligible frames
2026-05-14T18:27:52.632428Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:27:53.132060Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.2MB → 0.6MB (2.2x), 9 JPEGs deleted
2026-05-14T18:27:54.278904Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 1.1MB (1.4x), 8 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv ...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:07:17.813880Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:07:25.268127Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=10 elapsed=1.819536167s\n2026-05-14T18:07:25.268371Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 10 eligible frames\n2026-05-14T18:07:25.824320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.6MB → 0.2MB (4.0x), 5 JPEGs deleted\n2026-05-14T18:07:26.273059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.7x), 3 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:09:20.299383Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:11:22.783747Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:12:29.052150Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=2 elapsed=2.751484125s\n2026-05-14T18:12:29.052294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:13:25.193120Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:15:27.572444Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:17:04.060905Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-14T18:17:04.086797Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-14T18:17:04.289459Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-14T18:17:04.514888Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-14T18:17:04.557979Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-14T18:17:05.242244Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T18:17:05.549376Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-14T18:17:05.549451Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-14T18:17:06.308691Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T18:17:06.846677Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-14T18:17:06.846824Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-14T18:17:06.846890Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-14T18:17:07.444669Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=374 elapsed=3.00804925s\n2026-05-14T18:17:11.045310Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 160.8ms elapsed (expected 5.3ms) → inserting 155.4ms silence (14923 samples)\n2026-05-14T18:17:12.775454Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 83.0ms elapsed (expected 5.3ms) → inserting 77.7ms silence (7460 samples)\n2026-05-14T18:17:19.588065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4915557953454808779, trigger=visual_change)\n2026-05-14T18:17:19.712429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=visual_change)\n2026-05-14T18:17:25.869045Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:17:32.516386Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 86.0ms elapsed (expected 5.3ms) → inserting 80.7ms silence (7745 samples)\n2026-05-14T18:17:32.920163Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:17:41.655714Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=0 elapsed=12.584709333s\n2026-05-14T18:17:41.659296Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=375 elapsed=1.525763459s\n2026-05-14T18:19:15.613896Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=383 elapsed=1.089600916s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:19:38.508186Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:19:45.114427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)\n2026-05-14T18:19:55.429434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=visual_change)\n2026-05-14T18:19:57.285192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T18:20:28.676631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8971157115277618803, trigger=click)\n2026-05-14T18:20:55.977460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1564715759782373567, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:21:41.262468Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:22:46.614239Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=0 elapsed=4.94553125s\n2026-05-14T18:22:52.962854Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=392 elapsed=1.0767815s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:23:45.030577Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:24:19.699073Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.3ms elapsed (expected 5.3ms) → inserting 75.9ms silence (7288 samples)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:25:49.236566Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:27:52.060944Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=17 elapsed=5.421659208s\n2026-05-14T18:27:52.061111Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 17 eligible frames\n2026-05-14T18:27:52.632428Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:27:53.132060Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.2MB → 0.6MB (2.2x), 9 JPEGs deleted\n2026-05-14T18:27:54.278904Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 1.1MB (1.4x), 8 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:29:55.226276Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe","depth":4,"on_screen":true,"value":"ggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:07:17.813880Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:07:25.268127Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=10 elapsed=1.819536167s\n2026-05-14T18:07:25.268371Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 10 eligible frames\n2026-05-14T18:07:25.824320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.6MB → 0.2MB (4.0x), 5 JPEGs deleted\n2026-05-14T18:07:26.273059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.7x), 3 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:09:20.299383Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:11:22.783747Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:12:29.052150Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=2 elapsed=2.751484125s\n2026-05-14T18:12:29.052294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:13:25.193120Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:15:27.572444Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:17:04.060905Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-14T18:17:04.086797Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-14T18:17:04.289459Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-14T18:17:04.514888Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-14T18:17:04.557979Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-14T18:17:05.242244Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T18:17:05.549376Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-14T18:17:05.549451Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-14T18:17:06.308691Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T18:17:06.846677Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-14T18:17:06.846824Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-14T18:17:06.846890Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-14T18:17:07.444669Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=374 elapsed=3.00804925s\n2026-05-14T18:17:11.045310Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 160.8ms elapsed (expected 5.3ms) → inserting 155.4ms silence (14923 samples)\n2026-05-14T18:17:12.775454Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 83.0ms elapsed (expected 5.3ms) → inserting 77.7ms silence (7460 samples)\n2026-05-14T18:17:19.588065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4915557953454808779, trigger=visual_change)\n2026-05-14T18:17:19.712429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=visual_change)\n2026-05-14T18:17:25.869045Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:17:32.516386Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 86.0ms elapsed (expected 5.3ms) → inserting 80.7ms silence (7745 samples)\n2026-05-14T18:17:32.920163Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:17:41.655714Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=0 elapsed=12.584709333s\n2026-05-14T18:17:41.659296Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=375 elapsed=1.525763459s\n2026-05-14T18:19:15.613896Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=383 elapsed=1.089600916s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:19:38.508186Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:19:45.114427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)\n2026-05-14T18:19:55.429434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=visual_change)\n2026-05-14T18:19:57.285192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T18:20:28.676631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8971157115277618803, trigger=click)\n2026-05-14T18:20:55.977460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1564715759782373567, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:21:41.262468Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:22:46.614239Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=0 elapsed=4.94553125s\n2026-05-14T18:22:52.962854Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=392 elapsed=1.0767815s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:23:45.030577Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:24:19.699073Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.3ms elapsed (expected 5.3ms) → inserting 75.9ms silence (7288 samples)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:25:49.236566Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:27:52.060944Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=17 elapsed=5.421659208s\n2026-05-14T18:27:52.061111Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 17 eligible frames\n2026-05-14T18:27:52.632428Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T18:27:53.132060Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.2MB → 0.6MB (2.2x), 9 JPEGs deleted\n2026-05-14T18:27:54.278904Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 1.1MB (1.4x), 8 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T18:29:55.226276Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.05900931,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.32928857,"top":1.0,"width":0.05900931,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33128324,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.3882979,"top":1.0,"width":0.05900931,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.39029256,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.44730717,"top":1.0,"width":0.05900931,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.44930187,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5063165,"top":1.0,"width":0.058843084,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.50831115,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.56515956,"top":1.0,"width":0.058843084,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5671542,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.62400264,"top":1.0,"width":0.058843084,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.62599736,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-145-148:~ (nc)","depth":2,"bounds":{"left":0.6828458,"top":1.0,"width":0.058843084,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.68484044,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7280585,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49601063,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-1176716547952649155
|
-816202924460018208
|
click
|
accessibility
|
NULL
|
ggml_metal_free: deallocating
whisper_backend_init ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:07:17.813880Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:07:25.268127Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=10 elapsed=1.819536167s
2026-05-14T18:07:25.268371Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 10 eligible frames
2026-05-14T18:07:25.824320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.6MB → 0.2MB (4.0x), 5 JPEGs deleted
2026-05-14T18:07:26.273059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.7x), 3 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:09:20.299383Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:11:22.783747Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:12:29.052150Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=2 elapsed=2.751484125s
2026-05-14T18:12:29.052294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:13:25.193120Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:15:27.572444Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:17:04.060905Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)
2026-05-14T18:17:04.086797Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2
2026-05-14T18:17:04.289459Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)
2026-05-14T18:17:04.514888Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)
2026-05-14T18:17:04.557979Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)
2026-05-14T18:17:05.242244Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)
2026-05-14T18:17:05.549376Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart
2026-05-14T18:17:05.549451Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-14T18:17:06.308691Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)
2026-05-14T18:17:06.846677Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)
2026-05-14T18:17:06.846824Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)
2026-05-14T18:17:06.846890Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)
2026-05-14T18:17:07.444669Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=374 elapsed=3.00804925s
2026-05-14T18:17:11.045310Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 160.8ms elapsed (expected 5.3ms) → inserting 155.4ms silence (14923 samples)
2026-05-14T18:17:12.775454Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 83.0ms elapsed (expected 5.3ms) → inserting 77.7ms silence (7460 samples)
2026-05-14T18:17:19.588065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4915557953454808779, trigger=visual_change)
2026-05-14T18:17:19.712429Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=visual_change)
2026-05-14T18:17:25.869045Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4915557953454808779, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:17:32.516386Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 86.0ms elapsed (expected 5.3ms) → inserting 80.7ms silence (7745 samples)
2026-05-14T18:17:32.920163Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:17:41.655714Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=0 elapsed=12.584709333s
2026-05-14T18:17:41.659296Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=375 elapsed=1.525763459s
2026-05-14T18:19:15.613896Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=383 elapsed=1.089600916s
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:19:38.508186Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:19:45.114427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)
2026-05-14T18:19:55.429434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=visual_change)
2026-05-14T18:19:57.285192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-554583693258477392, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T18:20:28.676631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8971157115277618803, trigger=click)
2026-05-14T18:20:55.977460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1564715759782373567, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:21:41.262468Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:22:46.614239Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=0 elapsed=4.94553125s
2026-05-14T18:22:52.962854Z WARN sqlx::query: summary="SELECT DISTINCT app_name, window_name, …" db.statement="\n\nSELECT\n DISTINCT app_name,\n window_name,\n browser_url\nFROM\n frames\nWHERE\n timestamp > datetime('now', '-30 seconds')\n AND app_name IS NOT NULL\n AND window_name IS NOT NULL\n" rows_affected=0 rows_returned=392 elapsed=1.0767815s
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:23:45.030577Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:24:19.699073Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.3ms elapsed (expected 5.3ms) → inserting 75.9ms silence (7288 samples)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:25:49.236566Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T18:27:52.060944Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=17 elapsed=5.421659208s
2026-05-14T18:27:52.061111Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 17 eligible frames
2026-05-14T18:27:52.632428Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T18:27:53.132060Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.2MB → 0.6MB (2.2x), 9 JPEGs deleted
2026-05-14T18:27:54.278904Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 1.1MB (1.4x), 8 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv ...
|
45860
|
NULL
|
NULL
|
NULL
|
|
40744
|
1506
|
0
|
2026-05-14T09:15:57.892478+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778750157892_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","depth":4,"on_screen":true,"value":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.33776596,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33976063,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.40508643,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.40708113,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.47240692,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4744016,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5397274,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.54172206,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.60704786,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6090425,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.6743683,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.67636305,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7280585,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49601063,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-8787432842042246226
|
-1970252785695001119
|
idle
|
accessibility
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
40742
|
NULL
|
NULL
|
NULL
|
|
40743
|
1505
|
0
|
2026-05-14T09:15:57.745545+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778750157745_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","depth":4,"on_screen":true,"value":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-8787432842042246226
|
-1970252785695001119
|
idle
|
accessibility
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
40741
|
NULL
|
NULL
|
NULL
|
|
40742
|
NULL
|
0
|
2026-05-14T09:15:27.660641+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778750127660_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","depth":4,"on_screen":true,"value":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.33776596,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33976063,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.40508643,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.40708113,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.47240692,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4744016,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5397274,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.54172206,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.60704786,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6090425,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.6743683,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.67636305,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7280585,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49601063,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-8787432842042246226
|
-1970252785695001119
|
idle
|
accessibility
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
40741
|
NULL
|
0
|
2026-05-14T09:15:27.528185+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778750127528_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","depth":4,"on_screen":true,"value":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-14T12:15:04.735575Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=113 elapsed=2.624938375s\n2026-05-14T12:15:13.762879Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=66 elapsed=11.72677475s\n2026-05-14T12:15:13.765115Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-14T12:15:15.812779Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 2.0MB → 0.0MB (44.3x), 33 JPEGs deleted\n2026-05-14T12:15:18.036326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 4.9MB → 0.2MB (21.5x), 31 JPEGs deleted","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-8787432842042246226
|
-1970252785695001119
|
idle
|
accessibility
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-14T12:10:00.073643Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=22 elapsed=3.386172375s
2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compactio...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
40740
|
1504
|
12
|
2026-05-14T09:14:57.083734+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778750097083_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
whisper_init_state: kv pad size = 2.36 MB
whi whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whis...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"whisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","depth":4,"on_screen":true,"value":"whisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.33776596,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33976063,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.40508643,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.40708113,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.47240692,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4744016,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5397274,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.54172206,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.60704786,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6090425,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.6743683,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false}]...
|
1534401983010994248
|
-1970252785695001119
|
click
|
accessibility
|
NULL
|
whisper_init_state: kv pad size = 2.36 MB
whi whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whis...
|
40738
|
NULL
|
NULL
|
NULL
|
|
40739
|
1503
|
13
|
2026-05-14T09:14:57.089604+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778750097089_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
whisper_init_state: kv pad size = 2.36 MB
whi whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whis...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"whisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","depth":4,"on_screen":true,"value":"whisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)\n2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames\n2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted\n2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)\n2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)\n2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:49:33.255012Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=90 elapsed=4.502131875s\n2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames\n2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted\n2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)\n2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted\n2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T11:59:44.810433Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=80 elapsed=2.975872084s\n2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames\n2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted\n2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)\n2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:04:54.719219Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=23 elapsed=5.038572166s\n2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted\n2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:09:57.680290Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-14T12:10:00.073643Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=3.386172375s\n2026-05-14T12:10:00.073940Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-14T12:10:00.162432Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=1.17871275s\n2026-05-14T12:10:01.105437Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 0.6MB → 0.0MB (14.3x), 10 JPEGs deleted\n2026-05-14T12:10:02.014368Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted\n2026-05-14T12:11:39.174895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:39.176743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)\n2026-05-14T12:11:54.721845Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 90.5ms elapsed (expected 5.3ms) → inserting 85.2ms silence (8178 samples)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:12:03.340132Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T12:14:07.520305Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
1534401983010994248
|
-1970252785695001119
|
click
|
accessibility
|
NULL
|
whisper_init_state: kv pad size = 2.36 MB
whi whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:41:12.024582Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:13.536522Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3899909268894052485, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:43:16.247373Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:43:21.435499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:21.504514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:29.518808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8439548885587338707, trigger=click)
2026-05-14T11:43:45.924284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:16.951333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.317865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:18.386225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.185352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:20.265226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.430482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:21.480628Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:22.304274Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 117 eligible frames
2026-05-14T11:44:25.629527Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 60 frames, 3.7MB → 0.0MB (75.5x), 60 JPEGs deleted
2026-05-14T11:44:26.154304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:26.200137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:44:28.743329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 55 frames, 8.8MB → 0.2MB (37.7x), 55 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-14T11:45:16.431532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:16.483574Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:45:18.618752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:19.474033Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:45:29.158075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=593730046027495091, trigger=click)
2026-05-14T11:45:29.200661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1242313268223121183, trigger=click)
2026-05-14T11:45:32.974859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:33.023926Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.120191Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:45:42.228078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.666105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:46:38.718980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:47:10.843681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:47:22.053549Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:48:24.882731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:24.898344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:48:43.049629Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 93.0ms elapsed (expected 5.3ms) → inserting 87.7ms silence (8420 samples)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:49:25.141660Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:49:33.255012Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=90 elapsed=4.502131875s
2026-05-14T11:49:33.255192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 90 eligible frames
2026-05-14T11:49:35.892354Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 2.9MB → 0.0MB (61.0x), 47 JPEGs deleted
2026-05-14T11:49:38.390817Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 41 frames, 6.5MB → 0.2MB (28.3x), 41 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:51:28.386976Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:52:16.643026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:52:16.672181Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:53:30.916512Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:54:04.647564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:04.697193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9006240032176046078, trigger=click)
2026-05-14T11:54:38.546214Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-14T11:54:39.871380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 1.4MB → 0.0MB (30.4x), 22 JPEGs deleted
2026-05-14T11:54:41.821322Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.4MB → 0.2MB (14.6x), 21 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:55:36.908674Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:57:39.484346Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:58:59.457881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:58:59.481640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.423657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:09.474124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.661414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T11:59:11.718517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T11:59:42.205405Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T11:59:44.810433Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=80 elapsed=2.975872084s
2026-05-14T11:59:44.811786Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 80 eligible frames
2026-05-14T11:59:47.272581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 2.6MB → 0.0MB (56.3x), 43 JPEGs deleted
2026-05-14T11:59:49.607250Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 5.6MB → 0.2MB (24.2x), 35 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-14T12:00:24.589833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:25.655040Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:26.832387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:38.456296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.235853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:40.833256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.087724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5219237514711016516, trigger=click)
2026-05-14T12:00:42.177013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5219237514711016516, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:01:46.599136Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:03:49.206275Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:04:54.719219Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=23 elapsed=5.038572166s
2026-05-14T12:04:54.720627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames
2026-05-14T12:04:55.702295Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 0.7MB → 0.0MB (15.6x), 11 JPEGs deleted
2026-05-14T12:04:56.674389Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (7.0x), 10 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:05:52.348533Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T12:07:54.829608Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T12:08:35.035877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:08:35.051180Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.069084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1801589742647015621, trigger=click)
2026-05-14T12:09:03.070997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1801589742647015621, trigger=click)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whis...
|
40737
|
NULL
|
NULL
|
NULL
|
|
39644
|
1462
|
9
|
2026-05-14T07:23:51.550340+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778743431550_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
slackw Usage | Windsurf• JY-20891 add support for slackw Usage | Windsurf• JY-20891 add support for second:[SRD-6848] Sidekick SMS issue -Platform Sprint 4 Q2 - Platform TeDependabot alerts • jiminny/proph(JY-19958] Upgrade BE librariesWY-20773) User Pilot not receivini( JY-19957 | Remove abanded sympTypeError: Leaque|Flysystem\Files1. Userpilot I Ask Jiminny Report Gen[JY-19957] Upgrade BE libraries -Dependabot alerts - iminny/app11Y-208011 Sidekick SMS iccue -[SRD-6849] Recorded call does n8 Jiminnv8 Jiminny8 Jiminny* Configure SSH access to multiple≥ Useful conDev Tools - ElasticJiminny-7 (SRD-68531 Moxso - Potential des& CloudWatch I eu-west-1CloudWatch | eu-west-1Platform Sorint 4 02 - Platform TeJY-20891 add support for secondaService-Desk - Queues - Platfc XIL Now TohMIStOMwindowhelg1y.dulasslan.nelIld/servicedesk/oroeeJ JIMINNYg For you(• RecentSpaces / Service-Desk / QueuesPlatform team* Starred0+ Apps|:= ListQ SpacesQ Search workJiminny (New)s work lems14 Service-DeskKeyE QueuesSRD-6853Team Priority|©, All open tickets 12SRD-68495 Unassigned t... 3Ej Support tea….SpN-69A9•, Raised by meE Assigned to ..Ej Service requ..E Plattorm teamE Processing t...Ej Site reliability... 0•, New features... 0bi InfoSec issues 0j Ready for Cu... 0•1 Resolved ti….. 999+= View all queuesF Service requestsA IncidentsHl ReportsC Operations• Knowledae Base0 Customers• Channolel• Email loasI< Develoner escalationsl: Slack integration< Reporting Center• Search IRequest tvpe vStatus vAssianee vSummaryMoxso - Potential deal stages bugkecorded call does not aobear on the casnooaroSidekick SMS issueMore tilters vPriority levelP2 MediumPe MediumP2 MediumHomeDMSActivityLateMoreJiminny...yS Starred8 jiminny-x-integrati…..•olattorm-inner-teamE) Channels# ai-chapter# alerts# backend# bugs# confusion-clinid# curiosity lab# engineering# general# jiminny-bg# platform-tickets# product launches# randomi released# sofia-officea suodort# thank-yous# the people of iimi..A Direct messages• Vasil VasilevM Stefka StovanovaMario GeorgievNikolav Ivanovo James Graham8 Stovan Tanev© Galva DimitrovaStelivan Georgiey( Petko KashinskiR Aneliva Angelova EFa Lukas Kovali#: AppsS lira GloudToastm) Google Cale!YDally - Plau100% 1∞' Inu 14 May 9:40:30@ Describe what you are looking for& e. Vasil Vasilev• MessagestAdd canvas( FilesX Pins+1 new messageVasil Vasilley 9.39 AMIдобро утровчера забравих за тебопоави ли се с инлексите, или оше ти липоват ланнииначе имах прелвлиmake docker-updateи реоилдване на локалните контеинерипри мен преди време се бе случило така, че не върваха процесите за индексиране, понеже es-update-worker-а лиспвашеа пьк менажирането на тея процеси от scheduler беше спряноLukas Kovalik 9:42 AMоправих се, но трябваше да пипна команда ще намираше грешно активитиVasi Vasiley 9•43 AMкакьв беше точно проблема всъшност?Lukas Kovalik # 9:43 AMiny# php artisan activity:update:es 422003rouna aeloieysu.s, u. уooовасато 5аоeesending activity tor ts update..Done.това е вече с повече логове422003 -> 16трябва да го видя ощеVasil Vasiley 9:44 ANSactivity = Activity::id0rUuId(SactivityId)->firstO;това е пооблема.Lukas Kovalik 9:44.AMVasil Vasilev 9:44 AMActivity:.dOrludsactivitvicheтова само по себе си връша правилния моделобаче като извикаш върху Activity инстанция допълнтиелно ->first()бюка чаново в базата и рзима пиориа спошнат запискоито винаги в най ниското И ліMessage Vasil Vasilev+ Аal...
|
NULL
|
8912455784959274687
|
NULL
|
click
|
ocr
|
NULL
|
slackw Usage | Windsurf• JY-20891 add support for slackw Usage | Windsurf• JY-20891 add support for second:[SRD-6848] Sidekick SMS issue -Platform Sprint 4 Q2 - Platform TeDependabot alerts • jiminny/proph(JY-19958] Upgrade BE librariesWY-20773) User Pilot not receivini( JY-19957 | Remove abanded sympTypeError: Leaque|Flysystem\Files1. Userpilot I Ask Jiminny Report Gen[JY-19957] Upgrade BE libraries -Dependabot alerts - iminny/app11Y-208011 Sidekick SMS iccue -[SRD-6849] Recorded call does n8 Jiminnv8 Jiminny8 Jiminny* Configure SSH access to multiple≥ Useful conDev Tools - ElasticJiminny-7 (SRD-68531 Moxso - Potential des& CloudWatch I eu-west-1CloudWatch | eu-west-1Platform Sorint 4 02 - Platform TeJY-20891 add support for secondaService-Desk - Queues - Platfc XIL Now TohMIStOMwindowhelg1y.dulasslan.nelIld/servicedesk/oroeeJ JIMINNYg For you(• RecentSpaces / Service-Desk / QueuesPlatform team* Starred0+ Apps|:= ListQ SpacesQ Search workJiminny (New)s work lems14 Service-DeskKeyE QueuesSRD-6853Team Priority|©, All open tickets 12SRD-68495 Unassigned t... 3Ej Support tea….SpN-69A9•, Raised by meE Assigned to ..Ej Service requ..E Plattorm teamE Processing t...Ej Site reliability... 0•, New features... 0bi InfoSec issues 0j Ready for Cu... 0•1 Resolved ti….. 999+= View all queuesF Service requestsA IncidentsHl ReportsC Operations• Knowledae Base0 Customers• Channolel• Email loasI< Develoner escalationsl: Slack integration< Reporting Center• Search IRequest tvpe vStatus vAssianee vSummaryMoxso - Potential deal stages bugkecorded call does not aobear on the casnooaroSidekick SMS issueMore tilters vPriority levelP2 MediumPe MediumP2 MediumHomeDMSActivityLateMoreJiminny...yS Starred8 jiminny-x-integrati…..•olattorm-inner-teamE) Channels# ai-chapter# alerts# backend# bugs# confusion-clinid# curiosity lab# engineering# general# jiminny-bg# platform-tickets# product launches# randomi released# sofia-officea suodort# thank-yous# the people of iimi..A Direct messages• Vasil VasilevM Stefka StovanovaMario GeorgievNikolav Ivanovo James Graham8 Stovan Tanev© Galva DimitrovaStelivan Georgiey( Petko KashinskiR Aneliva Angelova EFa Lukas Kovali#: AppsS lira GloudToastm) Google Cale!YDally - Plau100% 1∞' Inu 14 May 9:40:30@ Describe what you are looking for& e. Vasil Vasilev• MessagestAdd canvas( FilesX Pins+1 new messageVasil Vasilley 9.39 AMIдобро утровчера забравих за тебопоави ли се с инлексите, или оше ти липоват ланнииначе имах прелвлиmake docker-updateи реоилдване на локалните контеинерипри мен преди време се бе случило така, че не върваха процесите за индексиране, понеже es-update-worker-а лиспвашеа пьк менажирането на тея процеси от scheduler беше спряноLukas Kovalik 9:42 AMоправих се, но трябваше да пипна команда ще намираше грешно активитиVasi Vasiley 9•43 AMкакьв беше точно проблема всъшност?Lukas Kovalik # 9:43 AMiny# php artisan activity:update:es 422003rouna aeloieysu.s, u. уooовасато 5аоeesending activity tor ts update..Done.това е вече с повече логове422003 -> 16трябва да го видя ощеVasil Vasiley 9:44 ANSactivity = Activity::id0rUuId(SactivityId)->firstO;това е пооблема.Lukas Kovalik 9:44.AMVasil Vasilev 9:44 AMActivity:.dOrludsactivitvicheтова само по себе си връша правилния моделобаче като извикаш върху Activity инстанция допълнтиелно ->first()бюка чаново в базата и рзима пиориа спошнат запискоито винаги в най ниското И ліMessage Vasil Vasilev+ Аal...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
39643
|
1461
|
10
|
2026-05-14T07:23:51.576051+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778743431576_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesCTools FirefoxFileEditViewHistoryBookmarksProfilesCTools WindowHelpmeet.google.com/mie-gawc-dsi?authuser=lukas.kovalik%40jiminny.com>0 lhl • | Daily - Platform - now+100% <478•Thu 14 May 9:45:36...
|
NULL
|
-708492635982512963
|
NULL
|
click
|
ocr
|
NULL
|
FirefoxFileEditViewHistoryBookmarksProfilesCTools FirefoxFileEditViewHistoryBookmarksProfilesCTools WindowHelpmeet.google.com/mie-gawc-dsi?authuser=lukas.kovalik%40jiminny.com>0 lhl • | Daily - Platform - now+100% <478•Thu 14 May 9:45:36...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
39465
|
1452
|
1
|
2026-05-14T06:57:34.108607+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778741854108_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: found device: Apple M1
ggml_metal ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T09:57:14.373110Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=4.403152208s
2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted
2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
ec2-user@ip-10-30-129-190:~ (-zsh)
Close Tab
ec2-user@ip-10-20-31-146:~ (-zsh)
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T09:57:14.373110Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=94 elapsed=4.403152208s\n2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames\n2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted\n2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted","depth":4,"on_screen":true,"value":"ggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T09:57:14.373110Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=94 elapsed=4.403152208s\n2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames\n2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted\n2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.33776596,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33976063,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.40508643,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.40708113,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.47240692,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4744016,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5397274,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.54172206,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.60704786,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6090425,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.6743683,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.67636305,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7280585,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49601063,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-2007697203937275002
|
-851668773673044512
|
app_switch
|
accessibility
|
NULL
|
ggml_metal_init: found device: Apple M1
ggml_metal ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T09:57:14.373110Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=4.403152208s
2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted
2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
ec2-user@ip-10-30-129-190:~ (-zsh)
Close Tab
ec2-user@ip-10-20-31-146:~ (-zsh)
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
39464
|
1451
|
1
|
2026-05-14T06:57:34.109781+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778741854109_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: found device: Apple M1
ggml_metal ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T09:57:14.373110Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=4.403152208s
2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted
2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
ec2-user@ip-10-30-129-190:~ (-zsh)
Close Tab
ec2-user@ip-10-20-31-146:~ (-zsh)
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T09:57:14.373110Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=94 elapsed=4.403152208s\n2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames\n2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted\n2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted","depth":4,"on_screen":true,"value":"ggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T09:57:14.373110Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=94 elapsed=4.403152208s\n2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames\n2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted\n2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-2007697203937275002
|
-851668773673044512
|
app_switch
|
accessibility
|
NULL
|
ggml_metal_init: found device: Apple M1
ggml_metal ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:54:16.421520Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:56:20.851873Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T09:57:14.373110Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=94 elapsed=4.403152208s
2026-05-14T09:57:14.375008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 94 eligible frames
2026-05-14T09:57:17.658125Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 52 frames, 9.0MB → 2.6MB (3.5x), 52 JPEGs deleted
2026-05-14T09:57:20.553167Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 6.2MB → 1.2MB (5.4x), 40 JPEGs deleted
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
ec2-user@ip-10-30-129-190:~ (-zsh)
Close Tab
ec2-user@ip-10-20-31-146:~ (-zsh)
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
39422
|
1449
|
4
|
2026-05-14T06:54:04.422041+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778741644422_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
whisper_backend_init_gpu: device 0: Metal (type: 1 whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:50:03.631593Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T09:51:19.712399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6945640393059794774, trigger=click)
2026-05-14T09:51:54.125790Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=177 elapsed=2.034505792s
2026-05-14T09:51:54.126663Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 177 eligible frames
2026-05-14T09:51:59.753801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 79 frames, 18.4MB → 4.5MB (4.1x), 79 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:52:09.939896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 96 frames, 15.0MB → 4.4MB (3.4x), 96 JPEGs deleted
2026-05-14T09:52:10.408710Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
ec2-user@ip-10-30-129-190:~ (-zsh)
Close Tab
ec2-user@ip-10-20-31-146:~ (-zsh)
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"whisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:50:03.631593Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T09:51:19.712399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6945640393059794774, trigger=click)\n2026-05-14T09:51:54.125790Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=177 elapsed=2.034505792s\n2026-05-14T09:51:54.126663Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 177 eligible frames\n2026-05-14T09:51:59.753801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 79 frames, 18.4MB → 4.5MB (4.1x), 79 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:52:09.939896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 96 frames, 15.0MB → 4.4MB (3.4x), 96 JPEGs deleted\n2026-05-14T09:52:10.408710Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","depth":4,"on_screen":true,"value":"whisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:50:03.631593Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-14T09:51:19.712399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6945640393059794774, trigger=click)\n2026-05-14T09:51:54.125790Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=177 elapsed=2.034505792s\n2026-05-14T09:51:54.126663Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 177 eligible frames\n2026-05-14T09:51:59.753801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 79 frames, 18.4MB → 4.5MB (4.1x), 79 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:52:09.939896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 96 frames, 15.0MB → 4.4MB (3.4x), 96 JPEGs deleted\n2026-05-14T09:52:10.408710Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
2643787768733391553
|
-816202909427632672
|
click
|
accessibility
|
NULL
|
whisper_backend_init_gpu: device 0: Metal (type: 1 whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:50:03.631593Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-14T09:51:19.712399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6945640393059794774, trigger=click)
2026-05-14T09:51:54.125790Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=177 elapsed=2.034505792s
2026-05-14T09:51:54.126663Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 177 eligible frames
2026-05-14T09:51:59.753801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 79 frames, 18.4MB → 4.5MB (4.1x), 79 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-14T09:52:09.939896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 96 frames, 15.0MB → 4.4MB (3.4x), 96 JPEGs deleted
2026-05-14T09:52:10.408710Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
ec2-user@ip-10-30-129-190:~ (-zsh)
Close Tab
ec2-user@ip-10-20-31-146:~ (-zsh)
Close Tab
⌥⌘1
screenpipe"...
|
39420
|
NULL
|
NULL
|
NULL
|
|
38758
|
1439
|
52
|
2026-05-14T06:28:14.218175+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778740094218_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:38:37.344312Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=44 elapsed=5.107326084s
2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted
2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
[URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ [] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ soundcore AeroClip (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture
2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03
2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)
2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)
2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)
2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms
2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms
2026-05-14T09:25:04.109913Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=9423 elapsed=5.524093667s
2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC
2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.045 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC\n2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.045 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-14T09:25:08.721297Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-14T09:25:08.727575Z INFO screenpipe_audio::audio_manager::manager: seeded 21 speakers (named + unnamed) from DB into embedding manager\n2026-05-14T09:25:08.727664Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-14T09:25:08.727731Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-14T09:25:09.238925Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-14T09:25:09.325492Z INFO screenpipe_audio::device::device_manager: starting recording for device: soundcore AeroClip (input)\n2026-05-14T09:25:09.326604Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for soundcore AeroClip (input) (bluetooth / 30s segments)\n2026-05-14T09:25:09.326657Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-14T09:25:16.929049Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-14T09:25:42.118426Z INFO screenpipe_audio::transcription::handle_new_transcript: device System Audio (output) skipping duplicate transcript (entire content overlaps with previous)\n2026-05-14T09:26:02.676206Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=56 elapsed=4.131920875s\n2026-05-14T09:26:02.676359Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-14T09:26:04.733866Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.0MB → 1.9MB (2.1x), 29 JPEGs deleted\n2026-05-14T09:26:06.932633Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.3MB → 2.2MB (2.0x), 25 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:27:10.299675Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","depth":4,"on_screen":true,"value":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC\n2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.045 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-14T09:25:08.721297Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-14T09:25:08.727575Z INFO screenpipe_audio::audio_manager::manager: seeded 21 speakers (named + unnamed) from DB into embedding manager\n2026-05-14T09:25:08.727664Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-14T09:25:08.727731Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-14T09:25:09.238925Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-14T09:25:09.325492Z INFO screenpipe_audio::device::device_manager: starting recording for device: soundcore AeroClip (input)\n2026-05-14T09:25:09.326604Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for soundcore AeroClip (input) (bluetooth / 30s segments)\n2026-05-14T09:25:09.326657Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-14T09:25:16.929049Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-14T09:25:42.118426Z INFO screenpipe_audio::transcription::handle_new_transcript: device System Audio (output) skipping duplicate transcript (entire content overlaps with previous)\n2026-05-14T09:26:02.676206Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=56 elapsed=4.131920875s\n2026-05-14T09:26:02.676359Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-14T09:26:04.733866Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.0MB → 1.9MB (2.1x), 29 JPEGs deleted\n2026-05-14T09:26:06.932633Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.3MB → 2.2MB (2.0x), 25 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:27:10.299675Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","is_focused":true}]...
|
-1436731437270198571
|
-5463917750643788320
|
click
|
accessibility
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:38:37.344312Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=44 elapsed=5.107326084s
2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted
2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
[URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ [] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ soundcore AeroClip (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture
2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03
2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)
2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)
2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)
2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms
2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms
2026-05-14T09:25:04.109913Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=9423 elapsed=5.524093667s
2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC
2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.045 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
38757
|
1437
|
40
|
2026-05-14T06:28:14.227870+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778740094227_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:38:37.344312Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=44 elapsed=5.107326084s
2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted
2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
[URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ [] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ soundcore AeroClip (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture
2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03
2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)
2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)
2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)
2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms
2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms
2026-05-14T09:25:04.109913Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=9423 elapsed=5.524093667s
2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC
2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.045 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC\n2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.045 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-14T09:25:08.721297Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-14T09:25:08.727575Z INFO screenpipe_audio::audio_manager::manager: seeded 21 speakers (named + unnamed) from DB into embedding manager\n2026-05-14T09:25:08.727664Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-14T09:25:08.727731Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-14T09:25:09.238925Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-14T09:25:09.325492Z INFO screenpipe_audio::device::device_manager: starting recording for device: soundcore AeroClip (input)\n2026-05-14T09:25:09.326604Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for soundcore AeroClip (input) (bluetooth / 30s segments)\n2026-05-14T09:25:09.326657Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-14T09:25:16.929049Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-14T09:25:42.118426Z INFO screenpipe_audio::transcription::handle_new_transcript: device System Audio (output) skipping duplicate transcript (entire content overlaps with previous)\n2026-05-14T09:26:02.676206Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=56 elapsed=4.131920875s\n2026-05-14T09:26:02.676359Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-14T09:26:04.733866Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.0MB → 1.9MB (2.1x), 29 JPEGs deleted\n2026-05-14T09:26:06.932633Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.3MB → 2.2MB (2.0x), 25 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:27:10.299675Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","depth":4,"on_screen":true,"value":"ggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC\n2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.045 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-14T09:25:08.721297Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-14T09:25:08.727575Z INFO screenpipe_audio::audio_manager::manager: seeded 21 speakers (named + unnamed) from DB into embedding manager\n2026-05-14T09:25:08.727664Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-14T09:25:08.727731Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-14T09:25:09.238925Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-14T09:25:09.325492Z INFO screenpipe_audio::device::device_manager: starting recording for device: soundcore AeroClip (input)\n2026-05-14T09:25:09.326604Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for soundcore AeroClip (input) (bluetooth / 30s segments)\n2026-05-14T09:25:09.326657Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-14T09:25:16.929049Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-14T09:25:42.118426Z INFO screenpipe_audio::transcription::handle_new_transcript: device System Audio (output) skipping duplicate transcript (entire content overlaps with previous)\n2026-05-14T09:26:02.676206Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=56 elapsed=4.131920875s\n2026-05-14T09:26:02.676359Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-14T09:26:04.733866Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.0MB → 1.9MB (2.1x), 29 JPEGs deleted\n2026-05-14T09:26:06.932633Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.3MB → 2.2MB (2.0x), 25 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-14T09:27:10.299675Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks","is_focused":true}]...
|
-1436731437270198571
|
-5463917750643788320
|
click
|
accessibility
|
NULL
|
ggml_metal_init: use concurrency = true
ggml_me ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:38:37.344312Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=0 rows_returned=44 elapsed=5.107326084s
2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted
2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: get the screenpipe desktop app for the full experience
[URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ [] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ soundcore AeroClip (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture
2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.
2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03
2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)
2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)
2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)
2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms
2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms
2026-05-14T09:25:04.109913Z WARN sqlx::query: summary="SELECT f.id, f.timestamp, f.offset_index, …" db.statement="\n\nSELECT\n f.id,\n f.timestamp,\n f.offset_index,\n COALESCE(\n SUBSTR(f.full_text, 1, 200),\n SUBSTR(f.accessibility_text, 1, 200),\n (\n SELECT\n SUBSTR(ot.text, 1, 200)\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as text,\n COALESCE(\n f.app_name,\n (\n SELECT\n ot.app_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as app_name,\n COALESCE(\n f.window_name,\n (\n SELECT\n ot.window_name\n FROM\n ocr_text ot\n WHERE\n ot.frame_id = f.id\n LIMIT\n 1\n )\n ) as window_name,\n COALESCE(vc.device_name, f.device_name) as screen_device,\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\n COALESCE(vc.fps, 0.033) as chunk_fps,\n f.browser_url,\n f.machine_id\nFROM\n frames f\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\nWHERE\n f.timestamp >= ?1\n AND f.timestamp <= ?2\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\nORDER BY\n f.timestamp DESC,\n f.offset_index DESC\nLIMIT\n 10000\n" rows_affected=0 rows_returned=9423 elapsed=5.524093667s
2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC
2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.045 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
38636
|
1435
|
2
|
2026-05-14T06:25:10.853277+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778739910853_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-13T20:27:52.347858Z INFO screenpipe_audio 2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ [] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ ...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC\n2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.045 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-14T09:25:08.721297Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-14T09:25:08.727575Z INFO screenpipe_audio::audio_manager::manager: seeded 21 speakers (named + unnamed) from DB into embedding manager\n2026-05-14T09:25:08.727664Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-14T09:25:08.727731Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-14T09:25:09.238925Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-14T09:25:09.325492Z INFO screenpipe_audio::device::device_manager: starting recording for device: soundcore AeroClip (input)\n2026-05-14T09:25:09.326604Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for soundcore AeroClip (input) (bluetooth / 30s segments)\n2026-05-14T09:25:09.326657Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)","depth":4,"on_screen":true,"value":"2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC\n2026-05-14T09:25:08.557254Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-14T09:25:08.557399Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-14T09:25:08.557427Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.045 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-14T09:25:08.714171Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-14T09:25:08.721297Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-14T09:25:08.727575Z INFO screenpipe_audio::audio_manager::manager: seeded 21 speakers (named + unnamed) from DB into embedding manager\n2026-05-14T09:25:08.727664Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-14T09:25:08.727731Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-14T09:25:09.238925Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-14T09:25:09.325492Z INFO screenpipe_audio::device::device_manager: starting recording for device: soundcore AeroClip (input)\n2026-05-14T09:25:09.326604Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for soundcore AeroClip (input) (bluetooth / 30s segments)\n2026-05-14T09:25:09.326657Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-3044940751880024210
|
-5463354800690367008
|
visual_change
|
accessibility
|
NULL
|
2026-05-13T20:27:52.347858Z INFO screenpipe_audio 2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ [] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ ...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
38635
|
1435
|
1
|
2026-05-14T06:25:04.791009+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778739904791_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
ggml_metal_init: use fusion = true
ggml_me ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"ggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC","depth":4,"on_screen":true,"value":"ggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-14T09:24:59.478046Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=38633, dur=113ms\n2026-05-14T09:24:59.615567Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=38634, dur=139ms\n2026-05-14T09:25:04.109913Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=9423 elapsed=5.524093667s\n2026-05-14T09:25:04.143960Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 9423 frame entries, coverage from 2026-05-13 06:24:58.585133 UTC","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-4557196159420754940
|
-5463917750643788320
|
visual_change
|
accessibility
|
NULL
|
ggml_metal_init: use fusion = true
ggml_me ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-14T09:24:58.542992Z INFO screenpipe_engine::...
|
38633
|
NULL
|
NULL
|
NULL
|
|
38634
|
1436
|
0
|
2026-05-14T06:24:59.247586+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778739899247_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
whisper_init_state: compute buffer (conv) = 14 whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor starte...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"whisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)","depth":4,"on_screen":true,"value":"whisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-14T09:24:59.416921Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.33776596,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33976063,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.40508643,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.40708113,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.47240692,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4744016,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5397274,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.54172206,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.60704786,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6090425,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.6743683,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.67636305,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7280585,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49601063,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-5989896626091703807
|
-5463917750643788320
|
manual
|
accessibility
|
NULL
|
whisper_init_state: compute buffer (conv) = 14 whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor starte...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
38633
|
1435
|
0
|
2026-05-14T06:24:59.201328+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-14/1778 /Users/lukas/.screenpipe/data/data/2026-05-14/1778739899201_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
whisper_init_state: kv pad size = 2.36 MB
whi whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"whisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)","depth":4,"on_screen":true,"value":"whisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:27:53.479247Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=70 elapsed=11.674598333s\n2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted\n2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:31:59.059676Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:33:17.883716Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=1 rows_returned=99 elapsed=8.890067292s\n2026-05-13T20:33:17.883941Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 99 eligible frames\n2026-05-13T20:33:17.891727Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=3.709471458s\n2026-05-13T20:33:20.639856Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 9.7MB → 0.5MB (18.5x), 34 JPEGs deleted\n2026-05-13T20:33:32.188498Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 12.9MB → 5.8MB (2.2x), 63 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:34:02.333860Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:35:59.996074Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:36:06.828724Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:36:08.344162Z INFO screenpipe_audio::core::run_record_and_transcribe: screen locked, pausing audio recording for MacBook Pro Microphone (input)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:38:09.099371Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:38:37.344312Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=44 elapsed=5.107326084s\n2026-05-13T20:38:37.346139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-13T20:38:38.686723Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 5.1MB → 0.5MB (10.0x), 18 JPEGs deleted\n2026-05-13T20:38:41.220417Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.4MB → 3.3MB (1.6x), 24 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:40:11.364685Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:42:13.293671Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:43:42.753501Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=22 elapsed=1.527175333s\n2026-05-13T20:43:42.753626Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-13T20:43:43.862384Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.8MB → 0.5MB (5.8x), 10 JPEGs deleted\n2026-05-13T20:43:44.995456Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (5.9x), 10 JPEGs deleted\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:44:15.490296Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:46:17.561354Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:48:19.446216Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:48:47.503128Z WARN sqlx::query: summary=\"SELECT id, snapshot_path, device_name, …\" db.statement=\"\\n\\nSELECT\\n id,\\n snapshot_path,\\n device_name,\\n timestamp\\nFROM\\n frames\\nWHERE\\n snapshot_path IS NOT NULL\\n AND timestamp < ?1\\nORDER BY\\n device_name,\\n timestamp ASC\\nLIMIT\\n 5000\\n\" rows_affected=0 rows_returned=11 elapsed=2.495709958s\n2026-05-13T20:48:47.503288Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 11 eligible frames\n2026-05-13T20:48:48.316165Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 1.4MB → 0.5MB (2.9x), 5 JPEGs deleted\n2026-05-13T20:48:48.942276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 4 frames, 0.8MB → 0.3MB (2.4x), 4 JPEGs deleted\n2026-05-13T20:49:42.528723Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-13T20:49:43.434142Z INFO screenpipe_audio::core::run_record_and_transcribe: screen unlocked — rebuilding stream for MacBook Pro Microphone (input) (avoids zombie-callback state observed after sleep/wake on macOS, Windows, and Linux)\n2026-05-13T20:49:43.440276Z WARN screenpipe_audio::audio_manager::manager: recording for device MacBook Pro Microphone (input) exited with error: stream rebuild required after screen unlock for MacBook Pro Microphone (input) (recovery is automatic via device_monitor)\n2026-05-13T20:49:44.371959Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-13T20:49:44.767833Z WARN screenpipe_audio::audio_manager::device_monitor: [DEVICE_RECOVERY] detected stale recording handle for MacBook Pro Microphone (input), cleaning up for restart\n2026-05-13T20:49:44.767967Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-13T20:49:44.785602Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-13T20:49:45.364548Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364628Z INFO screenpipe_audio::audio_manager::device_monitor: restarted with system default device: MacBook Pro Microphone (input)\n2026-05-13T20:49:45.364676Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-13T20:49:46.278662Z WARN sqlx::query: summary=\"INSERT INTO frames ( …\" db.statement=\"\\n\\nINSERT INTO\\n frames (\\n video_chunk_id,\\n offset_index,\\n timestamp,\\n name,\\n browser_url,\\n app_name,\\n window_name,\\n focused,\\n device_name,\\n snapshot_path,\\n capture_trigger,\\n accessibility_text,\\n text_source,\\n accessibility_tree_json,\\n content_hash,\\n simhash,\\n full_text,\\n elements_ref_frame_id,\\n document_path\\n )\\nVALUES\\n (\\n NULL,\\n 0,\\n ?1,\\n ?2,\\n ?3,\\n ?4,\\n ?5,\\n ?6,\\n ?7,\\n ?8,\\n ?9,\\n ?10,\\n ?11,\\n ?12,\\n ?13,\\n ?14,\\n ?15,\\n ?16,\\n ?17\\n )\\n\" rows_affected=1 rows_returned=0 elapsed=1.244703625s\n2026-05-13T20:49:46.796019Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)\n2026-05-13T20:49:47.183906Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 0 excluded)\n2026-05-13T20:49:48.460135Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.4ms elapsed (expected 5.3ms) → inserting 91.1ms silence (8742 samples)\n2026-05-13T20:49:49.414321Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 115.3ms elapsed (expected 5.3ms) → inserting 109.9ms silence (10554 samples)\n2026-05-13T20:49:50.138185Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 123.4ms elapsed (expected 5.3ms) → inserting 118.1ms silence (11335 samples)\n2026-05-13T20:49:50.422739Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 82.2ms elapsed (expected 5.3ms) → inserting 76.9ms silence (7383 samples)\n2026-05-13T20:49:50.671835Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 249.1ms elapsed (expected 5.3ms) → inserting 243.8ms silence (23401 samples)\n2026-05-13T20:49:57.489211Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=14.406079875s\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-13T20:50:25.337392Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.06712725s\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-13T20:50:34.187500Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks\n2026-05-13T20:50:40.135101Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=430 elapsed=1.170097666s\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-13T20:51:47.151342Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=1 rows_returned=432 elapsed=1.377976291s\nzsh: terminated npx screenpipe@latest record\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start\nzsh: command not found: alias\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias\naddssh='ssh-add ~/.ssh/*'\napp='cd ~/jiminny/app'\ncnt='docker exec -ti $(docker ps | grep worker | awk '\\''{print $1}'\\'') /bin/bash -c \"cd /home/jiminny && bash\"'\nco='git checkout'\ncov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'\ncsfix='make cs-fix'\ndev='docker exec -ti $(docker ps -q --filter \"name=docker_lamp_1\") /bin/bash'\neu='ssh lukas@jiminny-eu-bastion -D 127.0.0.1:7073 -L 7532:db:3306'\neues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'\next='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'\nfe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'\nfe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'\ngbr='git branch --sort=-committerdate'\ngcb='git branch --show-current | pbcopy'\ngs='git status'\nhhh=history\nhhs='history 0 | grep '\ninstall_nano='apt-get update & apt-get install nano'\nkar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'\nll='ls -la --color=tty'\nlock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'\nnas='ssh Adm1n@192.168.0.242 -p22'\npoetryshell='eval \"\"'\nprod='ssh lukas@jiminny-prod-bastion -D 127.0.0.1:7072 -L 7632:db:3306'\nprodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'\nprophet='cd ~/jiminny/app'\nprophetdown='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down\"'\nprophetup='aws-vault exec staging -- bash -c \"env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build\"'\nqa='ssh lukas@jiminny-qa-bastion -D 127.0.0.1:7074 -L 7432:db:3306'\nqaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'\nqai='ssh lukas@jiminny-qai-bastion -D 127.0.0.1:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'\nrmbc='rm -rf bootstrap/cache/*.php'\nrun-help=man\nsp-db='sqlite3 ~/.screenpipe/db.sqlite '\nsp-start='npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"'\nsp-status='curl -s http://localhost:3030/health | jq \"{status, frame_status, audio_status, last_frame: .last_frame_timestamp, uptime: .pipeline.uptime_secs, fps: .pipeline.capture_fps_actual, frames: .pipeline.frames_captured}\"'\nsp-stop='pkill -f screenpipe && echo '\\''screenpipe stopped'\\'\nstg='ssh lukas@jiminny-stage-bastion -D 127.0.0.1:7071 -L 7732:db:3306'\nstges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'\nveu='ssh jiminny-eu-ecs1'\nveu10='ssh jiminny-eu-ecs10'\nveu11='ssh jiminny-eu-ecs11'\nveu12='ssh jiminny-eu-ecs12'\nveu2='ssh jiminny-eu-ecs2'\nveu3='ssh jiminny-eu-ecs3'\nveu4='ssh jiminny-eu-ecs4'\nveu5='ssh jiminny-eu-ecs5'\nveu6='ssh jiminny-eu-ecs6'\nveu7='ssh jiminny-eu-ecs7'\nveu8='ssh jiminny-eu-ecs8'\nveu9='ssh jiminny-eu-ecs9'\nvprod='ssh jiminny-prod-ecs1'\nvprod10='ssh jiminny-prod-ecs10'\nvprod11='ssh jiminny-prod-ecs11'\nvprod12='ssh jiminny-prod-ecs12'\nvprod2='ssh jiminny-prod-ecs2'\nvprod3='ssh jiminny-prod-ecs3'\nvprod4='ssh jiminny-prod-ecs4'\nvprod5='ssh jiminny-prod-ecs5'\nvprod6='ssh jiminny-prod-ecs6'\nvprod7='ssh jiminny-prod-ecs7'\nvprod8='ssh jiminny-prod-ecs8'\nvprod9='ssh jiminny-prod-ecs9'\nvqa='ssh jiminny-qa-ecs1'\nvqa2='ssh jiminny-qa-ecs2'\nvqai='ssh jiminny-qai-ecs1'\nvqai2='ssh jiminny-qai-ecs2'\nvstage='ssh ec2-user@jiminny-subenv-worker-app0'\nvstg='ssh jiminny-stage-ecs1'\nvstg2='ssh ubuntu@jiminny-stage-ecs2'\nwhich-command=whence\nwork='cd ~/jiminny/infrastructure/dev/docker && docker compose up'\nworkoff='kill %1'\nworkon='caffeinate -d & echo \"Display sleep disabled (PID $!)\"'\nxd='make docker-xdebug-disable'\nxe='make docker-xdebug-enable'\nzp='nano ~/.zprofile'\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-14T09:24:58.131971Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-14T09:24:58.132049Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-14T09:24:58.543048Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-14T09:24:58.543106Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-14T09:24:58.542983Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-14T09:24:58.542992Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-14T09:24:58.543188Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-14T09:24:58.545885Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-14T09:24:58.546638Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-14T09:24:58.546795Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-14T09:24:58.547356Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-14T09:24:58.547453Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-14T09:24:58.547767Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-14T09:24:58.547888Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\n2026-05-14T09:24:58.550735Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ soundcore AeroClip (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-14T09:24:58.552083Z INFO screenpipe: starting UI event capture\n2026-05-14T09:24:58.555587Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-14T09:24:58.557961Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-14T09:24:58.568371Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-14T09:24:58.584826Z INFO screenpipe: text-PII worker skipped at startup — async_pii_redaction=false. OPF model (~2.8 GB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584861Z INFO screenpipe: image-PII worker skipped at startup — async_image_pii_redaction=false. rfdetr_v9 model (~108 MB) will NOT be downloaded or loaded. Toggle via Settings → Privacy → AI PII removal.\n2026-05-14T09:24:58.584915Z INFO screenpipe_engine::ui_recorder: UI recording session started: 25f92ee5-c210-4bb0-aa44-4054d2351b03\n2026-05-14T09:24:58.584978Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-14T09:24:58.585134Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-13 06:24:58.585133 UTC to 2026-05-14 06:24:58.585133 UTC)\n2026-05-14T09:24:58.585862Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-14T09:24:58.594987Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-14T09:24:58.599110Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-14T09:24:58.699260Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-14T09:24:58.699315Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.699350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-14T09:24:58.746653Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-14T09:24:58.746781Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-14T09:24:58.746794Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-14T09:24:58.746801Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-14T09:24:58.746815Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-14T09:24:59.307089Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 0 excluded)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28159723,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2857639,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42222223,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.4263889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5628472,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56701386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-30-129-190:~ (-zsh)","depth":2,"bounds":{"left":0.7034722,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70763886,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"ec2-user@ip-10-20-31-146:~ (-zsh)","depth":2,"bounds":{"left":0.8440972,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84826386,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95625,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47152779,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
1324975219323174460
|
-5463917742053853728
|
manual
|
accessibility
|
NULL
|
whisper_init_state: kv pad size = 2.36 MB
whi whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:25:47.446143Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:27:52.347858Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
2026-05-13T20:27:53.479247Z WARN sqlx::query: summary="SELECT id, snapshot_path, device_name, …" db.statement="\n\nSELECT\n id,\n snapshot_path,\n device_name,\n timestamp\nFROM\n frames\nWHERE\n snapshot_path IS NOT NULL\n AND timestamp < ?1\nORDER BY\n device_name,\n timestamp ASC\nLIMIT\n 5000\n" rows_affected=1 rows_returned=70 elapsed=11.674598333s
2026-05-13T20:27:53.484186Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-13T20:27:56.974006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 7.9MB → 0.9MB (8.8x), 28 JPEGs deleted
2026-05-13T20:28:08.932176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 9.0MB → 6.8MB (1.3x), 40 JPEGs deleted
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
2026-05-13T20:29:55.273894Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 50 orphaned chunks
tip: install a starter bundle of pipes:
screenpipe install [URL_WITH_CREDENTIALS] record
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias sp-start
zsh: command not found: alias
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ alias
addssh='ssh-add ~/.ssh/*'
app='cd ~/jiminny/app'
cnt='docker exec -ti $(docker ps | grep worker | awk '\''{print $1}'\'') /bin/bash -c "cd /home/jiminny && bash"'
co='git checkout'
cov='./vendor/bin/phpunit tests/Unit --coverage-html=build/coverage'
csfix='make cs-fix'
dev='docker exec -ti $(docker ps -q --filter "name=docker_lamp_1") /bin/bash'
eu='ssh lukas@jiminny-eu-bastion -D [IP_ADDRESS]:7073 -L 7532:db:3306'
eues='ssh ubuntu@jiminny-eu-ecs1 -L 7960:vpc-activities7-e7pfbl7wojjjnvp7olfpudrgke.eu-west-1.es.amazonaws.com:80'
ext='nvm use 20 && cd ~/jiminny/extension-app && yarn build:dev && yarn preview'
fe='yarn && nvm use 24 && cd ~/jiminny/app/front-end && yarn build:watch'
fe3='cd ~/jiminny/app/front-end-vue3 && yarn build:watch:production'
gbr='git branch --sort=-committerdate'
gcb='git branch --show-current | pbcopy'
gs='git status'
hhh=history
hhs='history 0 | grep '
install_nano='apt-get update & apt-get install nano'
kar='cp -f ~/DEV/settings/goku-karabiner-settings/karabiner.edn ~/.config/karabiner.edn && goku'
ll='ls -la --color=tty'
lock='kill %1 2>/dev/null; sleep 1 && pmset displaysleepnow'
nas='ssh Adm1n@[IP_ADDRESS] -p22'
poetryshell='eval ""'
prod='ssh lukas@jiminny-prod-bastion -D [IP_ADDRESS]:7072 -L 7632:db:3306'
prodes='ssh ubuntu@jiminny-prod-ecs1 -L 7970:vpc-activities7-3o2zlrelmga5qicf2yxxwtx6bi.us-east-2.es.amazonaws.com:80'
prophet='cd ~/jiminny/app'
prophetdown='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml down"'
prophetup='aws-vault exec staging -- bash -c "env | grep AWS_ > aws-creds.env && docker compose -f docker-compose.yml -f docker-compose.dev.yml up --build"'
qa='ssh lukas@jiminny-qa-bastion -D [IP_ADDRESS]:7074 -L 7432:db:3306'
qaes='ssh ubuntu@jiminny-qa-ecs1 -L 7950:vpc-activities7-s5zchrs4xqcnav3rjzmxgxvfvq.us-east-2.es.amazonaws.com:80'
qai='ssh lukas@jiminny-qai-bastion -D [IP_ADDRESS]:7075 -L 7777:jiminny-db-qai.c3uemcm84st0.us-east-2.rds.amazonaws.com:3306'
rmbc='rm -rf bootstrap/cache/*.php'
run-help=man
sp-db='sqlite3 ~/.screenpipe/db.sqlite '
sp-start='npx screenpipe@latest record --disable-audio --ignored-windows "Boosteroid"'
sp-status='curl -s [URL_WITH_CREDENTIALS] -D [IP_ADDRESS]:7071 -L 7732:db:3306'
stges='ssh ubuntu@jiminny-stage-ecs1 -L 7980:vpc-activities7-tgeodjeaugnaiigqgdcjjkrrj4.us-east-2.es.amazonaws.com:80'
veu='ssh jiminny-eu-ecs1'
veu10='ssh jiminny-eu-ecs10'
veu11='ssh jiminny-eu-ecs11'
veu12='ssh jiminny-eu-ecs12'
veu2='ssh jiminny-eu-ecs2'
veu3='ssh jiminny-eu-ecs3'
veu4='ssh jiminny-eu-ecs4'
veu5='ssh jiminny-eu-ecs5'
veu6='ssh jiminny-eu-ecs6'
veu7='ssh jiminny-eu-ecs7'
veu8='ssh jiminny-eu-ecs8'
veu9='ssh jiminny-eu-ecs9'
vprod='ssh jiminny-prod-ecs1'
vprod10='ssh jiminny-prod-ecs10'
vprod11='ssh jiminny-prod-ecs11'
vprod12='ssh jiminny-prod-ecs12'
vprod2='ssh jiminny-prod-ecs2'
vprod3='ssh jiminny-prod-ecs3'
vprod4='ssh jiminny-prod-ecs4'
vprod5='ssh jiminny-prod-ecs5'
vprod6='ssh jiminny-prod-ecs6'
vprod7='ssh jiminny-prod-ecs7'
vprod8='ssh jiminny-prod-ecs8'
vprod9='ssh jiminny-prod-ecs9'
vqa='ssh jiminny-qa-ecs1'
vqa2='ssh jiminny-qa-ecs2'
vqai='ssh jiminny-qai-ecs1'
vqai2='ssh jiminny-qai-ecs2'
vstage='ssh ec2-user@jiminny-subenv-worker-app0'
vstg='ssh jiminny-stage-ecs1'
vstg2='ssh ubuntu@jiminny-stage-ecs2'
which-command=whence
work='cd ~/jiminny/infrastructure/dev/docker && docker compose up'
workoff='kill %1'
workon='caffeinate -d & echo "Display sleep disabled (PID $!)"'
xd='make docker-xdebug-disable'
xe='make docker-xdebug-enable'
zp='nano ~/.zprofile'
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-14T09:24:57.412901Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-14T09:24:57.504235Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-14T09:24:58.108327Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-14T09:24:58.110039Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-14T09:24:58.110396Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-14T09:24:58.131971Z INFO screenpipe_engine...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
54
|
4
|
14
|
2026-05-06T17:32:25.907869+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088745907_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026 [2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: [URL_WITH_CREDENTIALS] ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped
2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture
2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop
2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager
2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager
2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down
2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager
2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2
2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1
2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete
ggml_metal_free: deallocating
2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:32:23.035815Z INFO screenpipe_...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)\n^C2026-05-06T20:31:44.992913Z INFO screenpipe: received ctrl+c, initiating shutdown\n2026-05-06T20:31:44.993815Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n2026-05-06T20:31:44.993845Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped\n2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture\n2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop\n2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager\n2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager\n2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down\n2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager\n2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2\n2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1\n2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete\nggml_metal_free: deallocating\n2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:32:23.035815Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:32:23.035838Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n2026-05-06T20:32:23.037534Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:32:23.038046Z INFO screenpipe: starting UI event capture\n2026-05-06T20:32:23.058967Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:32:23.060289Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(95))\n2026-05-06T20:32:23.082491Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:32:23.103681Z INFO screenpipe_engine::ui_recorder: UI recording session started: 83716bbd-ad71-45f9-9fba-e5b2bd8a5a97\n2026-05-06T20:32:23.103826Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:32:23.103903Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:32:23.103901 UTC to 2026-05-06 17:32:23.103901 UTC)\n2026-05-06T20:32:23.107276Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:32:23.116788Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:32:23.126899Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:32:23.132524Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 52 frame entries, coverage from 2026-05-05 17:32:23.103901 UTC\n2026-05-06T20:32:24.842085Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:32:24.842155Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:32:24.842202Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:32:25.405285Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:32:25.405525Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:32:25.405604Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:32:25.405641Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:32:25.405632Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:32:27.627877Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:32:28.150868Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=53, dur=82ms\n2026-05-06T20:32:28.853394Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)","depth":4,"on_screen":true,"value":"[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)\n^C2026-05-06T20:31:44.992913Z INFO screenpipe: received ctrl+c, initiating shutdown\n2026-05-06T20:31:44.993815Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n2026-05-06T20:31:44.993845Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped\n2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture\n2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop\n2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager\n2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager\n2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down\n2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager\n2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2\n2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1\n2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete\nggml_metal_free: deallocating\n2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:32:23.035815Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:32:23.035838Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n2026-05-06T20:32:23.037534Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:32:23.038046Z INFO screenpipe: starting UI event capture\n2026-05-06T20:32:23.058967Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:32:23.060289Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(95))\n2026-05-06T20:32:23.082491Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:32:23.103681Z INFO screenpipe_engine::ui_recorder: UI recording session started: 83716bbd-ad71-45f9-9fba-e5b2bd8a5a97\n2026-05-06T20:32:23.103826Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:32:23.103903Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:32:23.103901 UTC to 2026-05-06 17:32:23.103901 UTC)\n2026-05-06T20:32:23.107276Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:32:23.116788Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:32:23.126899Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:32:23.132524Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 52 frame entries, coverage from 2026-05-05 17:32:23.103901 UTC\n2026-05-06T20:32:24.842085Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:32:24.842155Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:32:24.842202Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:32:25.405285Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:32:25.405525Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:32:25.405604Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:32:25.405641Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:32:25.405632Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:32:27.627877Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:32:28.150868Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=53, dur=82ms\n2026-05-06T20:32:28.853394Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.64793885,"top":1.0,"width":0.0625,"height":-0.07581806},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.64860374,"top":1.0,"width":0.00831117,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.7017952,"top":1.0,"width":0.00731383,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.7130984,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.7200798,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.3487367,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.35073137,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.42719415,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42918882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5056516,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.50764626,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.58410907,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.58610374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.6625665,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.66456115,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7273936,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4956782,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-3153548874318014895
|
4336429617218774369
|
manual
|
accessibility
|
NULL
|
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026 [2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: [URL_WITH_CREDENTIALS] ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped
2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture
2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop
2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager
2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager
2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down
2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager
2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2
2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1
2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete
ggml_metal_free: deallocating
2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:32:23.035815Z INFO screenpipe_...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
53
|
3
|
13
|
2026-05-06T17:32:25.343407+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088745343_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
rsync 2026-04-27/ → NAS ✓ 0m26s (242 f rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: [URL_WITH_CREDENTIALS] ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped
2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture
2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop
2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager
2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager
2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down
2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager
2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2
2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1
2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete
ggml_metal_free: deallocating
2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: load...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)\n^C2026-05-06T20:31:44.992913Z INFO screenpipe: received ctrl+c, initiating shutdown\n2026-05-06T20:31:44.993815Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n2026-05-06T20:31:44.993845Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped\n2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture\n2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop\n2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager\n2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager\n2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down\n2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager\n2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2\n2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1\n2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete\nggml_metal_free: deallocating\n2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:32:23.035815Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:32:23.035838Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n2026-05-06T20:32:23.037534Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:32:23.038046Z INFO screenpipe: starting UI event capture\n2026-05-06T20:32:23.058967Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:32:23.060289Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(95))\n2026-05-06T20:32:23.082491Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:32:23.103681Z INFO screenpipe_engine::ui_recorder: UI recording session started: 83716bbd-ad71-45f9-9fba-e5b2bd8a5a97\n2026-05-06T20:32:23.103826Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:32:23.103903Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:32:23.103901 UTC to 2026-05-06 17:32:23.103901 UTC)\n2026-05-06T20:32:23.107276Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:32:23.116788Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:32:23.126899Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:32:23.132524Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 52 frame entries, coverage from 2026-05-05 17:32:23.103901 UTC\n2026-05-06T20:32:24.842085Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:32:24.842155Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:32:24.842202Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:32:25.405285Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:32:25.405525Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:32:25.405604Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:32:25.405641Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:32:25.405632Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:32:27.627877Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)","depth":4,"on_screen":true,"value":"rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)\n^C2026-05-06T20:31:44.992913Z INFO screenpipe: received ctrl+c, initiating shutdown\n2026-05-06T20:31:44.993815Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n2026-05-06T20:31:44.993845Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)\n2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped\n2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture\n2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop\n2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager\n2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager\n2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down\n2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager\n2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2\n2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1\n2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete\nggml_metal_free: deallocating\n2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:32:23.035815Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:32:23.035838Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n2026-05-06T20:32:23.037534Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:32:23.038046Z INFO screenpipe: starting UI event capture\n2026-05-06T20:32:23.058967Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:32:23.060289Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(95))\n2026-05-06T20:32:23.082491Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:32:23.103681Z INFO screenpipe_engine::ui_recorder: UI recording session started: 83716bbd-ad71-45f9-9fba-e5b2bd8a5a97\n2026-05-06T20:32:23.103826Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:32:23.103903Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:32:23.103901 UTC to 2026-05-06 17:32:23.103901 UTC)\n2026-05-06T20:32:23.107276Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:32:23.116788Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:32:23.126899Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:32:23.132524Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 52 frame entries, coverage from 2026-05-05 17:32:23.103901 UTC\n2026-05-06T20:32:24.842085Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:32:24.842155Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:32:24.842202Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:32:25.405285Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:32:25.405525Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:32:25.405604Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:32:25.405641Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:32:25.405632Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:32:27.627877Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.7888889,"top":0.10555556,"width":0.13055556,"height":0.024444444},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.7902778,"top":0.10555556,"width":0.017361112,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.9013889,"top":0.10555556,"width":0.015277778,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.925,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.93958336,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.16388889,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.16805555,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.32777777,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33194444,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.49166667,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.49583334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.65555555,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6597222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.8194444,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.82361114,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47083333,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-2607752369936877213
|
4336429616147131745
|
manual
|
accessibility
|
NULL
|
rsync 2026-04-27/ → NAS ✓ 0m26s (242 f rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: [URL_WITH_CREDENTIALS] ~ $ 2026-05-06T20:31:45.865813Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.865820Z INFO screenpipe_audio::device::device_manager: Stopping device: MacBook Pro Microphone (input)
2026-05-06T20:31:45.892593Z INFO screenpipe_audio::audio_manager::manager: audio manager stopped
2026-05-06T20:31:45.892684Z INFO screenpipe: stopping UI event capture
2026-05-06T20:31:45.893002Z INFO screenpipe_engine::meeting_detector: meeting v2: shutdown received, exiting detection loop
2026-05-06T20:31:45.893977Z INFO screenpipe: received shutdown signal for VisionManager
2026-05-06T20:31:45.894556Z INFO screenpipe_engine::vision_manager::manager: Shutting down VisionManager
2026-05-06T20:31:45.894516Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker shutting down
2026-05-06T20:31:45.894602Z INFO screenpipe_engine::vision_manager::manager: Stopping VisionManager
2026-05-06T20:31:45.895419Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 2
2026-05-06T20:31:45.895898Z INFO screenpipe_engine::vision_manager::manager: Stopping vision recording for monitor 1
2026-05-06T20:31:45.980559Z INFO screenpipe_engine::ui_recorder: UI recording session ended: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:31:45.980777Z INFO screenpipe: shutdown complete
ggml_metal_free: deallocating
2026-05-06T20:31:46.374234Z ERROR screenpipe_engine::event_driven_capture: event capture failed (trigger=click, monitor=1): monitor capture failed: capture task panicked: task 770 was cancelled
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ;3B
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:32:21.850318Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-06T20:32:21.937393Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:32:23.002257Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:32:23.006683Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:32:23.008348Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:32:23.030912Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:32:23.030979Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:32:23.031261Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:32:23.031328Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:32:23.031199Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:32:23.031387Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:32:23.031253Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:32:23.034682Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:32:23.035042Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:32:23.035480Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:32:23.035607Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:32:23.035705Z INFO screenpipe_core::pipes: load...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
52
|
3
|
12
|
2026-05-06T17:31:43.280460+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088703280_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 -rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))
2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)
2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC
2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)
2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms
2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)
2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms
2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.041 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)
2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started
2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events
2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)
2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)
2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)
2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)
2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 ...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)\n^C2026-05-06T20:31:44.992913Z INFO screenpipe: received ctrl+c, initiating shutdown\n2026-05-06T20:31:44.993815Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n2026-05-06T20:31:44.993845Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","depth":4,"on_screen":true,"value":"-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)\n^C2026-05-06T20:31:44.992913Z INFO screenpipe: received ctrl+c, initiating shutdown\n2026-05-06T20:31:44.993815Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n2026-05-06T20:31:44.993845Z INFO screenpipe_audio::device::device_manager: Stopping device: System Audio (output)\n\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.7888889,"top":0.10555556,"width":0.13055556,"height":0.024444444},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.7902778,"top":0.10555556,"width":0.017361112,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.9013889,"top":0.10555556,"width":0.015277778,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.925,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.93958336,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.16388889,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.16805555,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.32777777,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33194444,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.49166667,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.49583334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.65555555,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6597222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.8194444,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.82361114,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47083333,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-6269591095506064108
|
3182944612367924321
|
visual_change
|
accessibility
|
NULL
|
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 -rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))
2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)
2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC
2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)
2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms
2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)
2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms
2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.041 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)
2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started
2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events
2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)
2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)
2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)
2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)
2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 ...
|
50
|
NULL
|
NULL
|
NULL
|
|
51
|
4
|
13
|
2026-05-06T17:31:42.773448+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088702773_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 -rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))
2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)
2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC
2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)
2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms
2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)
2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms
2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.041 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)
2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started
2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events
2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)
2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)
2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)
2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)
2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)","depth":4,"on_screen":true,"value":"-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)\n2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\nggml_metal_free: deallocating\n2026-05-06T20:29:45.187551Z INFO screenpipe_audio::audio_manager::manager: reconciliation: transcribed 6 orphaned chunks\n2026-05-06T20:30:06.916244Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 81.4ms elapsed (expected 5.3ms) → inserting 76.0ms silence (7299 samples)\n2026-05-06T20:30:29.881247Z WARN screenpipe_audio::core::source_buffer: [MacBook Pro Microphone (input)] large gap on wired device: 96.0ms elapsed (expected 5.3ms) → inserting 90.7ms silence (8704 samples)","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.64793885,"top":1.0,"width":0.0625,"height":-0.07581806},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.64860374,"top":1.0,"width":0.00831117,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.7017952,"top":1.0,"width":0.00731383,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.7130984,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.7200798,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.3487367,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.35073137,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.42719415,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42918882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5056516,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.50764626,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.58410907,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.58610374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.6625665,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.66456115,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7273936,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4956782,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
7635447758729925822
|
3182944612367924289
|
visual_change
|
accessibility
|
NULL
|
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 -rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))
2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5
2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)
2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC
2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)
2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms
2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)
2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms
2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: "/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin"
2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)
2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...
whisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'
whisper_init_with_params_no_state: use gpu = 1
whisper_init_with_params_no_state: flash attn = 0
whisper_init_with_params_no_state: gpu_device = 0
whisper_init_with_params_no_state: dtw = 0
ggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices
ggml_metal_library_init: using embedded metal library
ggml_metal_library_init: loaded in 0.041 sec
ggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)
ggml_metal_device_init: GPU name: Apple M1
ggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)
ggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)
ggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)
ggml_metal_device_init: simdgroup reduction = true
ggml_metal_device_init: simdgroup matrix mul. = true
ggml_metal_device_init: has unified memory = true
ggml_metal_device_init: has bfloat = true
ggml_metal_device_init: has tensor = false
ggml_metal_device_init: use residency sets = true
ggml_metal_device_init: use shared buffers = true
ggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB
whisper_init_with_params_no_state: devices = 3
whisper_init_with_params_no_state: backends = 3
whisper_model_load: loading model
whisper_model_load: n_vocab = 51865
whisper_model_load: n_audio_ctx = 1500
whisper_model_load: n_audio_state = 384
whisper_model_load: n_audio_head = 6
whisper_model_load: n_audio_layer = 4
whisper_model_load: n_text_ctx = 448
whisper_model_load: n_text_state = 384
whisper_model_load: n_text_head = 6
whisper_model_load: n_text_layer = 4
whisper_model_load: n_mels = 80
whisper_model_load: ftype = 1
whisper_model_load: qntvr = 0
whisper_model_load: type = 1 (tiny)
whisper_model_load: adding 1608 extra tokens
whisper_model_load: n_langs = 99
whisper_model_load: Metal total size = 77.11 MB
whisper_model_load: model size = 77.11 MB
2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)
2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started
2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events
2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)
2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)
2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)
2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)
2026-05-06T20:28:15.251258Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8608554010568040663, trigger=visual_change)
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state: kv self size = 3.15 MB
whisper_init_state: kv cross size = 9.44 MB
whisper_init_state: kv pad size = 2.36 MB
whisper_init_state: compute buffer (conv) = 14.17 MB
whisper_init_state: compute buffer (encode) = 65.96 MB
whisper_init_state: compute buffer (cross) = 8.50 MB
whisper_init_state: compute buffer (decode) = 96.83 MB
ggml_metal_free: deallocating
whisper_backend_init_gpu: device 0: Metal (type: 1)
whisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)
whisper_backend_init_gpu: using Metal backend
ggml_metal_init: allocating
ggml_metal_init: found device: Apple M1
ggml_metal_init: picking default device: Apple M1
ggml_metal_init: use fusion = true
ggml_metal_init: use concurrency = true
ggml_metal_init: use graph optimize = true
whisper_backend_init: using BLAS backend
whisper_init_state...
|
49
|
NULL
|
NULL
|
NULL
|
|
5
|
2
|
1
|
2026-05-06T17:28:11.264509+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088491264_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 -rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)","depth":4,"on_screen":true,"value":"-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.64793885,"top":1.0,"width":0.0625,"height":-0.07581806},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.64860374,"top":1.0,"width":0.00831117,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.7017952,"top":1.0,"width":0.00731383,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.7130984,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.7200798,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.3487367,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.35073137,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.42719415,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42918882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5056516,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.50764626,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.58410907,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.58610374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.6625665,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.66456115,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7273936,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4956782,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-8608554010568040663
|
5579017683957906497
|
idle
|
accessibility
|
NULL
|
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 -rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes...
|
2
|
NULL
|
NULL
|
NULL
|
|
4
|
1
|
2
|
2026-05-06T17:27:58.583455+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088478583_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 -rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)","depth":4,"on_screen":true,"value":"-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events\n2026-05-06T20:27:47.831980Z INFO screenpipe_audio::device::device_manager: starting recording for device: System Audio (output)\n2026-05-06T20:27:47.832191Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for System Audio (output) (unknown / 30s segments)\n2026-05-06T20:27:47.906029Z INFO screenpipe_audio::device::device_manager: starting recording for device: MacBook Pro Microphone (input)\n2026-05-06T20:27:47.906090Z INFO screenpipe_audio::core::run_record_and_transcribe: starting continuous recording for MacBook Pro Microphone (input) (wired / 30s segments)","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.7888889,"top":0.10555556,"width":0.13055556,"height":0.024444444},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.7902778,"top":0.10555556,"width":0.017361112,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.9013889,"top":0.10555556,"width":0.015277778,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.925,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.93958336,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.16388889,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.16805555,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.32777777,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33194444,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.49166667,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.49583334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.65555555,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6597222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.8194444,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.82361114,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47083333,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-8608554010568040663
|
5579017683957906497
|
visual_change
|
accessibility
|
NULL
|
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 -rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture
2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
3
|
1
|
1
|
2026-05-06T17:27:46.571671+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088466571_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 -rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4
-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4
-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4
-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your d...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4\n-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4\n-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4\n-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4\n-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events","depth":4,"on_screen":true,"value":"-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4\n-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4\n-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4\n-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4\n-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)\n2026-05-06T20:27:41.257664Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=2, dur=140ms\n2026-05-06T20:27:44.641022Z INFO screenpipe_audio::transcription::engine: whisper model available: \"/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin\"\n2026-05-06T20:27:44.641079Z INFO screenpipe_audio::transcription::whisper::model: whisper context: gpu acceleration enabled (Metal on macOS, Vulkan on Windows)\n2026-05-06T20:27:44.641086Z INFO screenpipe_audio::transcription::engine: loading whisper model with GPU acceleration...\nwhisper_init_from_file_with_params_no_state: loading model from '/Users/lukas/.cache/huggingface/hub/models--ggerganov--whisper.cpp/snapshots/5359861c739e955e79d9a303bcbc70fb988958b1/ggml-tiny.bin'\nwhisper_init_with_params_no_state: use gpu = 1\nwhisper_init_with_params_no_state: flash attn = 0\nwhisper_init_with_params_no_state: gpu_device = 0\nwhisper_init_with_params_no_state: dtw = 0\nggml_metal_device_init: tensor API disabled for pre-M5 and pre-A19 devices\nggml_metal_library_init: using embedded metal library\nggml_metal_library_init: loaded in 0.041 sec\nggml_metal_rsets_init: creating a residency set collection (keep_alive = 180 s)\nggml_metal_device_init: GPU name: Apple M1\nggml_metal_device_init: GPU family: MTLGPUFamilyApple7 (1007)\nggml_metal_device_init: GPU family: MTLGPUFamilyCommon3 (3003)\nggml_metal_device_init: GPU family: MTLGPUFamilyMetal3 (5001)\nggml_metal_device_init: simdgroup reduction = true\nggml_metal_device_init: simdgroup matrix mul. = true\nggml_metal_device_init: has unified memory = true\nggml_metal_device_init: has bfloat = true\nggml_metal_device_init: has tensor = false\nggml_metal_device_init: use residency sets = true\nggml_metal_device_init: use shared buffers = true\nggml_metal_device_init: recommendedMaxWorkingSetSize = 11453.25 MB\nwhisper_init_with_params_no_state: devices = 3\nwhisper_init_with_params_no_state: backends = 3\nwhisper_model_load: loading model\nwhisper_model_load: n_vocab = 51865\nwhisper_model_load: n_audio_ctx = 1500\nwhisper_model_load: n_audio_state = 384\nwhisper_model_load: n_audio_head = 6\nwhisper_model_load: n_audio_layer = 4\nwhisper_model_load: n_text_ctx = 448\nwhisper_model_load: n_text_state = 384\nwhisper_model_load: n_text_head = 6\nwhisper_model_load: n_text_layer = 4\nwhisper_model_load: n_mels = 80\nwhisper_model_load: ftype = 1\nwhisper_model_load: qntvr = 0\nwhisper_model_load: type = 1 (tiny)\nwhisper_model_load: adding 1608 extra tokens\nwhisper_model_load: n_langs = 99\nwhisper_model_load: Metal total size = 77.11 MB\nwhisper_model_load: model size = 77.11 MB\n2026-05-06T20:27:44.857210Z INFO screenpipe_audio::transcription::engine: whisper model loaded successfully\nwhisper_backend_init_gpu: device 0: Metal (type: 1)\nwhisper_backend_init_gpu: found GPU device 0: Metal (type: 1, cnt: 0)\nwhisper_backend_init_gpu: using Metal backend\nggml_metal_init: allocating\nggml_metal_init: found device: Apple M1\nggml_metal_init: picking default device: Apple M1\nggml_metal_init: use fusion = true\nggml_metal_init: use concurrency = true\nggml_metal_init: use graph optimize = true\nwhisper_backend_init: using BLAS backend\nwhisper_init_state: kv self size = 3.15 MB\nwhisper_init_state: kv cross size = 9.44 MB\nwhisper_init_state: kv pad size = 2.36 MB\nwhisper_init_state: compute buffer (conv) = 14.17 MB\nwhisper_init_state: compute buffer (encode) = 65.96 MB\nwhisper_init_state: compute buffer (cross) = 8.50 MB\nwhisper_init_state: compute buffer (decode) = 96.83 MB\n2026-05-06T20:27:44.861912Z INFO screenpipe_audio::audio_manager::manager: transcription session created (will be reused across segments)\n2026-05-06T20:27:44.862480Z INFO screenpipe_audio::audio_manager::manager: audio manager started\n2026-05-06T20:27:44.862525Z INFO screenpipe_audio::audio_manager::manager: calendar-assisted speaker diarization: listening for meeting events","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.7888889,"top":0.10555556,"width":0.13055556,"height":0.024444444},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.7902778,"top":0.10555556,"width":0.017361112,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.9013889,"top":0.10555556,"width":0.015277778,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.925,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.93958336,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.16388889,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.16805555,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.32777777,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33194444,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.49166667,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.49583334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.65555555,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6597222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.8194444,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.82361114,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47083333,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
7244240707978763719
|
5579017683957890129
|
visual_change
|
accessibility
|
NULL
|
-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 -rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4
-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4
-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4
-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap
2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update
2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits
2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown
2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export
2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary
2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ false │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 7 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ MacBook Pro Microphone (input) │
│ │ System Audio (output) │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your d...
|
1
|
NULL
|
NULL
|
NULL
|
|
2
|
2
|
0
|
2026-05-06T17:27:37.434975+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088457434_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 -rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4
-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4
-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4
-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4
-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4
-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4
-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4
-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4
-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4
-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4
-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4
-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4
-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4
-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4
-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4
-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4
-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4
-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4
-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4
-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CF...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4\n-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4\n-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4\n-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4\n-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4\n-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4\n-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4\n-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4\n-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4\n-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4\n-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4\n-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4\n-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4\n-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4\n-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4\n-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4\n-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4\n-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4\n-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4\n-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4\n-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)","depth":4,"on_screen":true,"value":"-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4\n-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4\n-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4\n-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4\n-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4\n-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4\n-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4\n-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4\n-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4\n-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4\n-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4\n-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4\n-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4\n-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4\n-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4\n-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4\n-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4\n-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4\n-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4\n-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4\n-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)\n2026-05-06T20:27:39.593177Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=1, dur=101ms\n2026-05-06T20:27:40.672366Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 3 excluded)","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.64793885,"top":1.0,"width":0.0625,"height":-0.07581806},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.64860374,"top":1.0,"width":0.00831117,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.7017952,"top":1.0,"width":0.00731383,"height":-0.07581806},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.7130984,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.7200798,"top":1.0,"width":0.006981383,"height":-0.07661617},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.3487367,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.35073137,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.42719415,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42918882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5056516,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.50764626,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.58410907,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.58610374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.6625665,"top":1.0,"width":0.078457445,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.66456115,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7273936,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4956782,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
514828688542046928
|
598036581918358545
|
manual
|
accessibility
|
NULL
|
-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 -rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4
-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4
-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4
-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4
-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4
-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4
-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4
-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4
-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4
-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4
-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4
-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4
-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4
-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4
-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4
-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4
-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4
-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4
-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4
-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CF...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
1
|
1
|
0
|
2026-05-06T17:27:36.772517+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-06/1778 /Users/lukas/.screenpipe/data/data/2026-05-06/1778088456772_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
-rw-r--r-- 1 lukas staff 659494 28 Apr 10:38 -rw-r--r-- 1 lukas staff 659494 28 Apr 10:38 compact_monitor_1_1777361899343.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 10:43 compact_monitor_1_1777362216761.mp4
-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4
-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4
-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4
-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4
-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4
-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4
-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4
-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4
-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4
-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4
-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4
-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4
-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4
-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4
-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4
-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4
-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4
-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4
-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4
-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO scree...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"-rw-r--r-- 1 lukas staff 659494 28 Apr 10:38 compact_monitor_1_1777361899343.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 10:43 compact_monitor_1_1777362216761.mp4\n-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4\n-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4\n-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4\n-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4\n-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4\n-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4\n-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4\n-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4\n-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4\n-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4\n-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4\n-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4\n-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4\n-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4\n-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4\n-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4\n-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4\n-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4\n-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4\n-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4\n-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)","depth":4,"on_screen":true,"value":"-rw-r--r-- 1 lukas staff 659494 28 Apr 10:38 compact_monitor_1_1777361899343.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 10:43 compact_monitor_1_1777362216761.mp4\n-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4\n-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4\n-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4\n-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4\n-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4\n-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4\n-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4\n-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4\n-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4\n-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4\n-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4\n-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4\n-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4\n-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4\n-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4\n-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4\n-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4\n-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4\n-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4\n-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4\n-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4\n-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4\n-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4\n-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4\n-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4\n-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4\n-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4\n-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4\n-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4\n-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4\n-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4\n-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4\n-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4\n-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4\n-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4\n-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4\n-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4\n-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4\n-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4\n-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4\n-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4\n-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4\n-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4\n-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4\n-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4\n-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4\n-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4\n-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4\n-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4\n-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4\n-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4\n-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4\n-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4\n-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4\n-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4\n-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4\n-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4\n-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4\n-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4\n-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4\n-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4\n-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4\n-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4\n-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4\n-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4\n-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4\n-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4\n-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4\n-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4\n-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4\n-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4\n-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4\n-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4\n-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4\n-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4\n-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4\n-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4\n-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4\n-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4\n-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4\n-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4\n-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4\n-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4\n-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4\n-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4\n-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4\n-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4\n-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4\n-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4\n-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4\n-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4\n-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4\n-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4\n-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4\n-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4\n-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4\n-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4\n-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4\n-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4\n-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4\n-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4\n-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4\n-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4\n-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4\n-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4\n-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4\n-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4\n-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4\n-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4\n-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4\n-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4\n-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4\n-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4\n-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4\n-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4\n-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 22523176\ndrwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .\ndrwx------+ 93 lukas staff 2976 28 Apr 16:51 ..\n-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store\ndrwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude\n-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json\ndrwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data\n-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite\n-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm\n-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal\ndrwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes\n-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log\n-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log\n-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log\n-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log\n-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log\n-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log\n-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log\n-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log\n-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log\n-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log\n-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log\n-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log\n-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log\n-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log\n-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log\n-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log\n-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log\n-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log\n-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh\n-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27 \n[2026-05-06 18:58:18] ========================================\n[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 18:58:18] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m04s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m06s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m07s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)\n frames (7543 rows) ⠴ % \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27\n[2026-05-06 19:22:16] ========================================\n[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27\n[2026-05-06 19:22:16] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (7.7G)\n Data dir: OK (242 files, 325M)\n\n[+00m01s] ▶ Counting source rows for 2026-04-27\n frames: 7543\n elements: 470235\n ui_events: 9909\n ocr_text: 2193\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m01s\n creating FTS tables ✓ 0m00s\n\n[+00m03s] ▶ Syncing data for 2026-04-27\n video_chunks ✓ 0m11s\n frames (7543 rows) ✓ 4m40s\n ocr_text (2193 rows) ✓ 0m25s\n ui_events (9909 rows) ✓ 0m02s\n elements (470235 rows) ✓ 2m46s\n meetings (3 rows) ✓ 0m00s\n\n[+08m07s] ▶ Updating FTS indexes\n elements_fts ✓ 2m59s\n frames_fts ✓ 6m07s\n ui_events_fts ✓ 0m03s\n\n[+17m16s] ▶ Verifying DB\n frames: 7543 / 7543 ✓\n elements: 470235 / 470235 ✓\n ui_events: 9909 / 9909 ✓\n ocr_text: 2193 / 2193 ✓\n meetings: 3 / 3 ✓\n\n[+18m46s] ▶ Copying data folder for 2026-04-27\n rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)\n\n[2026-05-06 19:41:28] Archive DB size: 9.7G\n[2026-05-06 19:41:28] Total time: 19m12s\n[2026-05-06 19:41:28] Sync complete for 2026-04-27\n[2026-05-06 19:41:28] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28\n[2026-05-06 19:44:49] ========================================\n[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28\n[2026-05-06 19:44:49] ========================================\n\n[+00m00s] ▶ Preflight checks\n Source DB: OK ( 11G)\n NAS mount: OK /Volumes/screenpipe\n Archive DB: exists (9.7G)\n Data dir: OK (223 files, 159M)\n\n[+00m00s] ▶ Counting source rows for 2026-04-28\n frames: 4535\n elements: 407532\n ui_events: 8621\n ocr_text: 1623\n meetings: 3\n\n[+00m02s] ▶ Initialising tables, indexes, FTS\n creating tables ✓ 0m00s\n creating indexes ✓ 0m00s\n creating FTS tables ✓ 0m00s\n\n[+00m02s] ▶ Syncing data for 2026-04-28\n video_chunks ✓ 0m12s\n frames (4535 rows) ✓ 1m30s\n ocr_text (1623 rows) ✓ 0m32s\n ui_events (8621 rows) ✓ 0m01s\n elements (407532 rows) ✓ 1m02s\n meetings (3 rows) ✓ 0m00s\n\n[+03m19s] ▶ Updating FTS indexes\n elements_fts ✓ 1m36s\n frames_fts ✓ 2m28s\n ui_events_fts ✓ 0m04s\n\n[+07m27s] ▶ Verifying DB\n frames: 4535 / 4535 ✓\n elements: 407532 / 407532 ✓\n ui_events: 8621 / 8621 ✓\n ocr_text: 1623 / 1623 ✓\n meetings: 3 / 3 ✓\n\n[+08m59s] ▶ Copying data folder for 2026-04-28\n rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)\n\n[2026-05-06 19:54:08] Archive DB size: 10G\n[2026-05-06 19:54:08] Total time: 9m19s\n[2026-05-06 19:54:08] Sync complete for 2026-04-28\n[2026-05-06 19:54:08] ========================================\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh \n#!/bin/bash\n# screenpipe_sync.sh\n# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).\n# Also copies the day's video/frame data folder to the NAS.\n#\n# Usage:\n# ./screenpipe_sync.sh # syncs yesterday (default)\n# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date\n# ./screenpipe_sync.sh today # syncs today so far\n#\n# Cron example (runs at 3am daily):\n# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1\n\nset -euo pipefail\n\n# ─── CONFIG ───────────────────────────────────────────────────────────────────\nDB_SRC=\"${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}\"\nNAS_MOUNT=\"${NAS_MOUNT:-/Volumes/screenpipe}\"\nNAS_DB=\"$NAS_MOUNT/archive.db\"\nNAS_DATA=\"$NAS_MOUNT/data\"\nLOG_FILE=\"$HOME/.screenpipe/sync.log\"\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── HELPERS ──────────────────────────────────────────────────────────────────\nSCRIPT_START=$(date +%s)\n\nlog() {\n local msg=\"[$(date '+%Y-%m-%d %H:%M:%S')] $*\"\n echo \"$msg\" | tee -a \"$LOG_FILE\"\n}\n\nstep() {\n local now=$(date +%s)\n local elapsed=$(( now - SCRIPT_START ))\n local min=$(( elapsed / 60 ))\n local sec=$(( elapsed % 60 ))\n printf \"\\n[+%02dm%02ds] ▶ %s\\n\" \"$min\" \"$sec\" \"$*\" | tee -a \"$LOG_FILE\"\n}\n\nrun_sqlite_heredoc() {\n local label=\"$1\"\n local sql=\"$2\"\n local start=$(date +%s)\n\n printf \" %-36s \" \"$label\"\n\n sqlite3 \"$DB_SRC\" <<< \"$sql\" &\n local pid=$!\n local spin=('⠋' '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')\n local i=0\n while kill -0 \"$pid\" 2>/dev/null; do\n printf \"\\r %-36s %s \" \"$label\" \"${spin[$i]}\"\n i=$(( (i + 1) % 10 ))\n sleep 0.2\n done\n wait \"$pid\"\n local rc=$?\n if [ $rc -ne 0 ]; then\n printf \"\\r %-36s ✗ FAILED\\n\" \"$label\" | tee -a \"$LOG_FILE\"\n exit $rc\n fi\n\n local dur=$(( $(date +%s) - start ))\n printf \"\\r %-36s ✓ %dm%02ds\\n\" \"$label\" \"$(( dur / 60 ))\" \"$(( dur % 60 ))\" | tee -a \"$LOG_FILE\"\n}\n\ncheck() {\n local label=\"$1\" got=\"$2\" expected=\"$3\"\n if [ \"$got\" -eq \"$expected\" ]; then\n printf \" %-20s %s / %s ✓\\n\" \"$label:\" \"$got\" \"$expected\"\n else\n printf \" %-20s %s / %s ✗ MISMATCH\\n\" \"$label:\" \"$got\" \"$expected\"\n fi\n}\n# ──────────────────────────────────────────────────────────────────────────────\n\n# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────\nif [ \"${1:-}\" = \"today\" ]; then\n TARGET_DATE=$(date +%Y-%m-%d)\nelif [ -n \"${1:-}\" ]; then\n TARGET_DATE=\"$1\"\n if ! [[ \"$TARGET_DATE\" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then\n echo \"ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday.\"\n exit 1\n fi\nelse\n TARGET_DATE=$(date -v-1d +%Y-%m-%d)\nfi\n\nlog \"========================================\"\nlog \"Screenpipe sync starting for: $TARGET_DATE\"\nlog \"========================================\"\n\n# ─── PREFLIGHT ────────────────────────────────────────────────────────────────\nstep \"Preflight checks\"\n\nif [ ! -f \"$DB_SRC\" ]; then\n log \"ERROR: Source DB not found at $DB_SRC\"; exit 1\nfi\nprintf \" %-20s %s (%s)\\n\" \"Source DB:\" \"OK\" \"$(du -sh \"$DB_SRC\" | cut -f1)\"\n\nif [ ! -d \"$NAS_MOUNT\" ]; then\n log \"ERROR: NAS not mounted at $NAS_MOUNT\"; exit 1\nfi\nprintf \" %-20s %s\\n\" \"NAS mount:\" \"OK $NAS_MOUNT\"\n\n# Check if DB already synced for this date\nDB_ALREADY_SYNCED=false\nif [ -f \"$NAS_DB\" ]; then\n EXISTING=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\" 2>/dev/null || echo \"0\")\n if [ \"$EXISTING\" -gt \"0\" ]; then\n log \"Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n else\n printf \" %-20s %s (%s)\\n\" \"Archive DB:\" \"exists\" \"$(du -sh \"$NAS_DB\" | cut -f1)\"\n fi\nelse\n printf \" %-20s %s\\n\" \"Archive DB:\" \"will be created\"\nfi\n\n# Source data dir for this date\nDATA_SRC=\"$HOME/.screenpipe/data/data/$TARGET_DATE\"\nif [ -d \"$DATA_SRC\" ]; then\n DATA_SIZE=$(du -sh \"$DATA_SRC\" | cut -f1)\n DATA_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n printf \" %-20s %s (%s files, %s)\\n\" \"Data dir:\" \"OK\" \"$DATA_FILES\" \"$DATA_SIZE\"\nelse\n printf \" %-20s %s\\n\" \"Data dir:\" \"not found — skipping file copy\"\nfi\n\n# ─── DB SYNC ──────────────────────────────────────────────────────────────────\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────\n step \"Counting source rows for $TARGET_DATE\"\n\n SRC_FRAMES=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_ELEMENTS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_UI=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n SRC_OCR=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n SRC_MEETINGS=$(sqlite3 \"$DB_SRC\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';\")\n\n printf \" %-20s %s\\n\" \"frames:\" \"$SRC_FRAMES\"\n printf \" %-20s %s\\n\" \"elements:\" \"$SRC_ELEMENTS\"\n printf \" %-20s %s\\n\" \"ui_events:\" \"$SRC_UI\"\n printf \" %-20s %s\\n\" \"ocr_text:\" \"$SRC_OCR\"\n printf \" %-20s %s\\n\" \"meetings:\" \"$SRC_MEETINGS\"\n\n if [ \"$SRC_FRAMES\" -eq \"0\" ]; then\n log \"No frames found for $TARGET_DATE — skipping DB sync\"\n DB_ALREADY_SYNCED=true\n fi\n\nfi\n\nif [ \"$DB_ALREADY_SYNCED\" = false ]; then\n\n # ─── INIT TABLES ──────────────────────────────────────────────────────────\n step \"Initialising tables, indexes, FTS\"\n\n run_sqlite_heredoc \"creating tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;\nCREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating indexes\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);\nCREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);\nCREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);\nCREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);\nCREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"creating FTS tables\" \"\nATTACH '$NAS_DB' AS nas;\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(\n text, role, frame_id UNINDEXED,\n content='elements', content_rowid='id', tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(\n full_text, app_name, window_name, browser_url, id UNINDEXED,\n tokenize='unicode61'\n);\nCREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(\n text_content,\n app_name,\n window_title,\n element_name,\n content='ui_events',\n content_rowid='id',\n tokenize='unicode61'\n);\nDETACH nas;\n\"\n\n # ─── SYNC DATA ────────────────────────────────────────────────────────────\n step \"Syncing data for $TARGET_DATE\"\n\n run_sqlite_heredoc \"video_chunks\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.video_chunks\n SELECT * FROM main.video_chunks\n WHERE id IN (\n SELECT DISTINCT video_chunk_id FROM main.frames\n WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL\n );\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames ($SRC_FRAMES rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.frames\n SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ocr_text ($SRC_OCR rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ocr_text\n SELECT o.* FROM main.ocr_text o\n JOIN main.frames f ON o.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events ($SRC_UI rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.ui_events\n SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"elements ($SRC_ELEMENTS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.elements\n SELECT e.* FROM main.elements e\n JOIN main.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"meetings ($SRC_MEETINGS rows)\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT OR IGNORE INTO nas.meetings\n SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';\nDETACH nas;\n\"\n\n # ─── FTS UPDATE ───────────────────────────────────────────────────────────\n step \"Updating FTS indexes\"\n\n run_sqlite_heredoc \"elements_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.elements_fts(rowid, text, role)\n SELECT e.id, e.text, e.role\n FROM nas.elements e\n JOIN nas.frames f ON e.frame_id = f.id\n WHERE date(f.timestamp) = '$TARGET_DATE'\n AND e.text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"frames_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)\n SELECT id, full_text, app_name, window_name, browser_url, id\n FROM nas.frames\n WHERE date(timestamp) = '$TARGET_DATE'\n AND full_text IS NOT NULL;\nDETACH nas;\n\"\n\n run_sqlite_heredoc \"ui_events_fts\" \"\nATTACH '$NAS_DB' AS nas;\nINSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)\n SELECT id, text_content, app_name, window_title, element_name\n FROM nas.ui_events\n WHERE date(timestamp) = '$TARGET_DATE'\n AND text_content IS NOT NULL;\nDETACH nas;\n\"\n\n # ─── VERIFY DB ────────────────────────────────────────────────────────────\n step \"Verifying DB\"\n\n V_FRAMES=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';\")\n V_ELEMENTS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_UI=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';\")\n V_OCR=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');\")\n V_MEETINGS=$(sqlite3 \"$NAS_DB\" \"SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';\")\n\n check \"frames\" \"$V_FRAMES\" \"$SRC_FRAMES\"\n check \"elements\" \"$V_ELEMENTS\" \"$SRC_ELEMENTS\"\n check \"ui_events\" \"$V_UI\" \"$SRC_UI\"\n check \"ocr_text\" \"$V_OCR\" \"$SRC_OCR\"\n check \"meetings\" \"$V_MEETINGS\" \"$SRC_MEETINGS\"\n\nfi\n\n# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────\n# Always runs regardless of DB sync status\nstep \"Copying data folder for $TARGET_DATE\"\n\nif [ -d \"$DATA_SRC\" ]; then\n mkdir -p \"$NAS_DATA/$TARGET_DATE\"\n RSYNC_START=$(date +%s)\n printf \" %-36s \" \"rsync $TARGET_DATE/ → NAS\"\n rsync -a --ignore-existing \\\n \"$DATA_SRC/\" \\\n \"$NAS_DATA/$TARGET_DATE/\" \\\n 2>>\"$LOG_FILE\"\n RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))\n COPIED_FILES=$(ls \"$NAS_DATA/$TARGET_DATE\" | wc -l | tr -d ' ')\n SRC_FILES=$(ls \"$DATA_SRC\" | wc -l | tr -d ' ')\n COPIED_SIZE=$(du -sh \"$NAS_DATA/$TARGET_DATE\" | cut -f1)\n if [ \"$COPIED_FILES\" -eq \"$SRC_FILES\" ]; then\n printf \"\\r %-36s ✓ %dm%02ds (%s files, %s)\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \\\n \"$(( RSYNC_DUR / 60 ))\" \"$(( RSYNC_DUR % 60 ))\" \\\n \"$COPIED_FILES\" \"$COPIED_SIZE\" | tee -a \"$LOG_FILE\"\n else\n printf \"\\r %-36s ✗ %s / %s files\\n\" \\\n \"rsync $TARGET_DATE/ → NAS\" \"$COPIED_FILES\" \"$SRC_FILES\" | tee -a \"$LOG_FILE\"\n fi\nelse\n printf \" %-36s %s\\n\" \"rsync $TARGET_DATE/ → NAS\" \"skipped (no source dir)\"\nfi\n\n# ─── SUMMARY ──────────────────────────────────────────────────────────────────\nTOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))\nDB_SIZE=$(du -sh \"$NAS_DB\" | cut -f1)\n\necho \"\"\nlog \"Archive DB size: $DB_SIZE\"\nlog \"Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s\"\nlog \"Sync complete for $TARGET_DATE\"\nlog \"========================================\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll\ntotal 0\ndrwxr-xr-x 2 lukas staff 64 6 May 20:22 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm \nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll\ntotal 24\ndrwx------ 9 lukas staff 288 28 Apr 09:18 .\ndrwx------+ 92 lukas staff 2944 6 May 20:22 ..\ndrwx------ 5 lukas staff 160 1 Nov 2021 _cacache\ndrwx------@ 2 lukas staff 64 28 Apr 09:18 _locks\ndrwx------ 15 lukas staff 480 27 Apr 19:54 _logs\ndrwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx\n-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked\n-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json\n-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll \ntotal 52920\ndrwx------+ 92 lukas staff 2944 6 May 20:22 .\ndrwxr-xr-x 5 root admin 160 23 Aug 2024 ..\n-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding\n-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store\ndrwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash\ndrwx------ 5 lukas staff 160 1 Nov 2021 .aws\n-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json\n-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history\n-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc\ndrwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito\ndrwx------@ 6 lukas staff 192 9 Apr 19:53 .cache\ndrwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude\n-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json\ndrwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium\ndrwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer\ndrwx------ 16 lukas staff 512 21 May 2025 .config\ndrwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue\ndrwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot\ndrwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor\ndrwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor\ndrwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona\ndrwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb\ndrwx------ 24 lukas staff 768 27 Apr 18:14 .docker\ndrwx------ 15 lukas staff 480 6 Jun 2023 .dropbox\ndrwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak\n-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth\n-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig\n-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp\ndrwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon\ndrwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc\n-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst\ndrwx------ 5 lukas staff 160 23 Dec 2024 .local\n-rw------- 1 lukas staff 204 16 Mar 2024 .netrc\ndrwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp\n-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history\n-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer\ndrwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py\ndrwx------ 8 lukas staff 256 6 May 20:24 .npm\n-rw------- 1 lukas staff 74 20 May 2024 .npmrc\ndrwx------ 32 lukas staff 1024 25 Jul 2025 .nvm\ndrwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman\n-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile\n-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history\ndrwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode\ndrwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight\ndrwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint\ndrwx------ 15 lukas staff 480 8 Aug 2025 .ssh\ndrwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit\ndrwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm\n-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo\ndrwx------ 5 lukas staff 160 19 Jun 2023 .vscode\ndrwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp\n UW PICO 5.09 New Buffer \n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n [ Read 1 line ] \n^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos \n^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell \ndrwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm\ndrwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf\ndrwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn\n-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc\n-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump\n-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381\n-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile\n-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy\n-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave\n-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save\n-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees\n-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history\ndrwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions\n-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc\ndrwx------@ 9 lukas staff 288 20 Apr 20:55 Applications\ndrwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects\ndrwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV\ndrwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop\ndrwx------@ 7 lukas staff 224 26 Mar 14:40 Documents\ndrwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads\ndrwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen\ndrwx------@ 112 lukas staff 3584 2 Dec 09:19 Library\ndrwx------ 7 lukas staff 224 12 Feb 2024 Movies\ndrwx------+ 5 lukas staff 160 25 Sep 2023 Music\ndrwx------+ 9 lukas staff 288 25 Sep 2023 Pictures\ndrwx------ 3 lukas staff 96 8 Nov 2021 Postman\ndrwx------+ 4 lukas staff 128 28 Oct 2021 Public\n-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf\ndrwx------ 4 lukas staff 128 2 Jul 2023 Users\n-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log\n-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4\n-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg\ndrwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)\ndrwx------ 16 lukas staff 512 3 Nov 2025 jiminny\ndrwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules\ndrwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast\n-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin\n-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh\n-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe\ncd: no such file or directory: /Users/lukas/.screenpipe\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows \"Boosteroid\" --retention-days 7\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated\nchecking permissions...\n screen recording: ok\n microphone: ok\n accessibility: ok\n2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-06T20:27:34.088403Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-06T20:27:34.089942Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-06T20:27:34.090417Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-06T20:27:34.112650Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-06T20:27:34.112711Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-06T20:27:34.619906Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-06T20:27:34.619937Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-06T20:27:34.619857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-06T20:27:34.619847Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-06T20:27:34.620018Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-06T20:27:34.624746Z INFO screenpipe_core::pipes: installed built-in pipe: day-recap\n2026-05-06T20:27:34.626304Z INFO screenpipe_core::pipes: installed built-in pipe: standup-update\n2026-05-06T20:27:34.628597Z INFO screenpipe_core::pipes: installed built-in pipe: ai-habits\n2026-05-06T20:27:34.629463Z INFO screenpipe_core::pipes: installed built-in pipe: time-breakdown\n2026-05-06T20:27:34.630081Z INFO screenpipe_core::pipes: installed built-in pipe: video-export\n2026-05-06T20:27:34.630972Z INFO screenpipe_core::pipes: installed built-in pipe: meeting-summary\n2026-05-06T20:27:34.631427Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-06T20:27:34.631521Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-06T20:27:34.631587Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-06T20:27:34.631640Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-06T20:27:34.631690Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-06T20:27:34.631738Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-06T20:27:34.631752Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ false │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 7 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ MacBook Pro Microphone (input) │\n│ │ System Audio (output) │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-06T20:27:34.638384Z INFO screenpipe: starting UI event capture\n2026-05-06T20:27:34.637679Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n2026-05-06T20:27:34.649154Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(94))\n2026-05-06T20:27:34.652794Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-06T20:27:34.655839Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-06T20:27:34.673877Z INFO screenpipe_engine::ui_recorder: UI recording session started: 54869993-7b4b-491f-b717-2a583517f9c5\n2026-05-06T20:27:34.673910Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-06T20:27:34.674057Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-05 17:27:34.674056 UTC to 2026-05-06 17:27:34.674056 UTC)\n2026-05-06T20:27:34.674892Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-06T20:27:34.675788Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 0 frame entries, coverage from 2026-05-05 17:27:34.674056 UTC\n2026-05-06T20:27:34.686546Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-06T20:27:34.691371Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-06T20:27:36.270608Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-06T20:27:36.270669Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.270714Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-06T20:27:36.932583Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-06T20:27:36.932852Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-06T20:27:36.932882Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-06T20:27:36.932899Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-06T20:27:36.932901Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-06T20:27:39.158281Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 3 excluded)","is_focused":true},{"role":"AXTextField","text":"you","depth":3,"bounds":{"left":0.7888889,"top":0.10555556,"width":0.13055556,"height":0.024444444},"on_screen":true,"automation_id":"_NS:65","value":"you","role_description":"search text field","subrole":"AXSearchField","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"search","depth":4,"bounds":{"left":0.7902778,"top":0.10555556,"width":0.017361112,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"cancel","depth":4,"bounds":{"left":0.9013889,"top":0.10555556,"width":0.015277778,"height":0.024444444},"on_screen":true,"role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go left","depth":3,"bounds":{"left":0.925,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:59","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXButton","text":"go right","depth":3,"bounds":{"left":0.93958336,"top":0.10666667,"width":0.014583333,"height":0.023333333},"on_screen":true,"automation_id":"_NS:49","role_description":"button","is_enabled":true,"is_focused":false},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (docker)","depth":2,"bounds":{"left":0.16388889,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.16805555,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.32777777,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33194444,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.49166667,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.49583334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.65555555,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6597222,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.8194444,"top":0.05888889,"width":0.16388889,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.82361114,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.9548611,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.47083333,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-3175729714503896221
|
2903879591132052497
|
manual
|
accessibility
|
NULL
|
-rw-r--r-- 1 lukas staff 659494 28 Apr 10:38 -rw-r--r-- 1 lukas staff 659494 28 Apr 10:38 compact_monitor_1_1777361899343.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 10:43 compact_monitor_1_1777362216761.mp4
-rw-r--r-- 1 lukas staff 658369 28 Apr 10:48 compact_monitor_1_1777362531562.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 10:54 compact_monitor_1_1777362844570.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 10:59 compact_monitor_1_1777363156173.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 11:04 compact_monitor_1_1777363471960.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 11:09 compact_monitor_1_1777363780754.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 11:14 compact_monitor_1_1777364091631.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:20 compact_monitor_1_1777364399949.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 11:25 compact_monitor_1_1777364707696.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 11:30 compact_monitor_1_1777365021138.mp4
-rw-r--r-- 1 lukas staff 657494 28 Apr 11:35 compact_monitor_1_1777365334863.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 11:40 compact_monitor_1_1777365647363.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 11:46 compact_monitor_1_1777365960793.mp4
-rw-r--r-- 1 lukas staff 658369 28 Apr 11:51 compact_monitor_1_1777366272670.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 11:56 compact_monitor_1_1777366581087.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 12:01 compact_monitor_1_1777366885670.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:06 compact_monitor_1_1777367201821.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 12:11 compact_monitor_1_1777367517013.mp4
-rw-r--r-- 1 lukas staff 661994 28 Apr 12:17 compact_monitor_1_1777367833288.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 12:22 compact_monitor_1_1777368158856.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:27 compact_monitor_1_1777368475271.mp4
-rw-r--r-- 1 lukas staff 659994 28 Apr 12:33 compact_monitor_1_1777368789494.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 12:38 compact_monitor_1_1777369105746.mp4
-rw-r--r-- 1 lukas staff 658244 28 Apr 12:43 compact_monitor_1_1777369420420.mp4
-rw-r--r-- 1 lukas staff 659244 28 Apr 12:48 compact_monitor_1_1777369728628.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 12:54 compact_monitor_1_1777370046041.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 12:59 compact_monitor_1_1777370361638.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 13:04 compact_monitor_1_1777370677661.mp4
-rw-r--r-- 1 lukas staff 660995 28 Apr 13:09 compact_monitor_1_1777370991662.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:15 compact_monitor_1_1777371307758.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:20 compact_monitor_1_1777371622003.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 13:25 compact_monitor_1_1777371936310.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:30 compact_monitor_1_1777372250913.mp4
-rw-r--r-- 1 lukas staff 659869 28 Apr 13:36 compact_monitor_1_1777372563723.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 13:41 compact_monitor_1_1777372878952.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:46 compact_monitor_1_1777373192385.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 13:51 compact_monitor_1_1777373505576.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 13:56 compact_monitor_1_1777373815249.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:02 compact_monitor_1_1777374129679.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 14:07 compact_monitor_1_1777374442607.mp4
-rw-r--r-- 1 lukas staff 658619 28 Apr 14:12 compact_monitor_1_1777374754971.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:17 compact_monitor_1_1777375068922.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 14:23 compact_monitor_1_1777375395803.mp4
-rw-r--r-- 1 lukas staff 659619 28 Apr 14:28 compact_monitor_1_1777375713843.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:33 compact_monitor_1_1777376032046.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 14:39 compact_monitor_1_1777376346251.mp4
-rw-r--r-- 1 lukas staff 658744 28 Apr 14:44 compact_monitor_1_1777376655731.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 14:49 compact_monitor_1_1777376965747.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 14:54 compact_monitor_1_1777377278905.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:00 compact_monitor_1_1777377599386.mp4
-rw-r--r-- 1 lukas staff 659494 28 Apr 15:05 compact_monitor_1_1777377913234.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:10 compact_monitor_1_1777378230148.mp4
-rw-r--r-- 1 lukas staff 657744 28 Apr 15:15 compact_monitor_1_1777378546013.mp4
-rw-r--r-- 1 lukas staff 658994 28 Apr 15:21 compact_monitor_1_1777378863028.mp4
-rw-r--r-- 1 lukas staff 657619 28 Apr 15:26 compact_monitor_1_1777379181829.mp4
-rw-r--r-- 1 lukas staff 660244 28 Apr 15:31 compact_monitor_1_1777379498541.mp4
-rw-r--r-- 1 lukas staff 661370 28 Apr 15:36 compact_monitor_1_1777379816522.mp4
-rw-r--r-- 1 lukas staff 657994 28 Apr 15:42 compact_monitor_1_1777380132952.mp4
-rw-r--r-- 1 lukas staff 658494 28 Apr 15:47 compact_monitor_1_1777380451138.mp4
-rw-r--r-- 1 lukas staff 658119 28 Apr 15:52 compact_monitor_1_1777380769459.mp4
-rw-r--r-- 1 lukas staff 658869 28 Apr 15:58 compact_monitor_1_1777381085241.mp4
-rw-r--r-- 1 lukas staff 660245 28 Apr 16:03 compact_monitor_1_1777381399658.mp4
-rw-r--r-- 1 lukas staff 661870 28 Apr 16:08 compact_monitor_1_1777381716781.mp4
-rw-r--r-- 1 lukas staff 661620 28 Apr 16:13 compact_monitor_1_1777382034411.mp4
-rw-r--r-- 1 lukas staff 661118 28 Apr 16:19 compact_monitor_1_1777382351932.mp4
-rw-r--r-- 1 lukas staff 659369 28 Apr 16:24 compact_monitor_1_1777382669035.mp4
-rw-r--r-- 1 lukas staff 659119 28 Apr 16:29 compact_monitor_1_1777382983556.mp4
-rw-r--r-- 1 lukas staff 657869 28 Apr 16:34 compact_monitor_1_1777383297132.mp4
-rw-r--r-- 1 lukas staff 606367 28 Apr 16:40 compact_monitor_1_1777383609588.mp4
-rw-r--r-- 1 lukas staff 397068 28 Apr 17:01 compact_monitor_1_1777384874970.mp4
-rw-r--r-- 1 lukas staff 1592462 28 Apr 17:06 compact_monitor_1_1777385198571.mp4
-rw-r--r-- 1 lukas staff 1327809 28 Apr 17:12 compact_monitor_1_1777385523980.mp4
-rw-r--r-- 1 lukas staff 2262498 28 Apr 17:17 compact_monitor_1_1777385864559.mp4
-rw-r--r-- 1 lukas staff 1702453 28 Apr 17:23 compact_monitor_1_1777386198870.mp4
-rw-r--r-- 1 lukas staff 2034287 28 Apr 17:29 compact_monitor_1_1777386532344.mp4
-rw-r--r-- 1 lukas staff 1352893 28 Apr 17:34 compact_monitor_1_1777386875277.mp4
-rw-r--r-- 1 lukas staff 1873946 28 Apr 17:40 compact_monitor_1_1777387208685.mp4
-rw-r--r-- 1 lukas staff 1155463 28 Apr 17:45 compact_monitor_1_1777387548798.mp4
-rw-r--r-- 1 lukas staff 1428159 28 Apr 17:51 compact_monitor_1_1777387882691.mp4
-rw-r--r-- 1 lukas staff 1398484 28 Apr 17:56 compact_monitor_1_1777388213861.mp4
-rw-r--r-- 1 lukas staff 1688438 28 Apr 18:02 compact_monitor_1_1777388542869.mp4
-rw-r--r-- 1 lukas staff 2401161 28 Apr 18:07 compact_monitor_1_1777388869470.mp4
-rw-r--r-- 1 lukas staff 1283247 28 Apr 18:13 compact_monitor_1_1777389192202.mp4
-rw-r--r-- 1 lukas staff 1398160 28 Apr 18:18 compact_monitor_1_1777389525394.mp4
-rw-r--r-- 1 lukas staff 452906 28 Apr 18:24 compact_monitor_1_1777389856559.mp4
-rw-r--r-- 1 lukas staff 566518 28 Apr 18:29 compact_monitor_1_1777390191054.mp4
-rw-r--r-- 1 lukas staff 445894 28 Apr 18:35 compact_monitor_1_1777390513567.mp4
-rw-r--r-- 1 lukas staff 444044 28 Apr 18:40 compact_monitor_1_1777390841877.mp4
-rw-r--r-- 1 lukas staff 437853 28 Apr 18:46 compact_monitor_1_1777391162552.mp4
-rw-r--r-- 1 lukas staff 441008 28 Apr 18:51 compact_monitor_1_1777391489107.mp4
-rw-r--r-- 1 lukas staff 443934 28 Apr 18:57 compact_monitor_1_1777391823165.mp4
-rw-r--r-- 1 lukas staff 443624 28 Apr 19:02 compact_monitor_1_1777392146221.mp4
-rw-r--r-- 1 lukas staff 447164 28 Apr 19:07 compact_monitor_1_1777392469679.mp4
-rw-r--r-- 1 lukas staff 442431 28 Apr 19:13 compact_monitor_1_1777392792794.mp4
-rw-r--r-- 1 lukas staff 436805 28 Apr 19:18 compact_monitor_1_1777393109301.mp4
-rw-r--r-- 1 lukas staff 435633 28 Apr 19:23 compact_monitor_1_1777393423192.mp4
-rw-r--r-- 1 lukas staff 1162510 28 Apr 09:30 compact_monitor_2_1777357806702.mp4
-rw-r--r-- 1 lukas staff 3394878 28 Apr 09:35 compact_monitor_2_1777358126186.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 09:40 compact_monitor_2_1777358443280.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 09:46 compact_monitor_2_1777358769231.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 09:51 compact_monitor_2_1777359084493.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 09:56 compact_monitor_2_1777359399758.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 10:01 compact_monitor_2_1777359707884.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 10:06 compact_monitor_2_1777360016892.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 10:12 compact_monitor_2_1777360329199.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 10:17 compact_monitor_2_1777360641498.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:22 compact_monitor_2_1777360953971.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 10:27 compact_monitor_2_1777361264266.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:33 compact_monitor_2_1777361583211.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 10:38 compact_monitor_2_1777361903545.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 10:43 compact_monitor_2_1777362219032.mp4
-rw-r--r-- 1 lukas staff 265614 28 Apr 10:48 compact_monitor_2_1777362532674.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 10:54 compact_monitor_2_1777362845950.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 10:59 compact_monitor_2_1777363157577.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 11:04 compact_monitor_2_1777363473776.mp4
-rw-r--r-- 1 lukas staff 267099 28 Apr 11:09 compact_monitor_2_1777363782342.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 11:14 compact_monitor_2_1777364092822.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:20 compact_monitor_2_1777364400840.mp4
-rw-r--r-- 1 lukas staff 266694 28 Apr 11:25 compact_monitor_2_1777364709144.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 11:30 compact_monitor_2_1777365022090.mp4
-rw-r--r-- 1 lukas staff 264669 28 Apr 11:35 compact_monitor_2_1777365335928.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 11:40 compact_monitor_2_1777365649137.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 11:46 compact_monitor_2_1777365962619.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 11:51 compact_monitor_2_1777366273740.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 11:56 compact_monitor_2_1777366582034.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 12:01 compact_monitor_2_1777366886631.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:06 compact_monitor_2_1777367202805.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:11 compact_monitor_2_1777367518861.mp4
-rw-r--r-- 1 lukas staff 269261 28 Apr 12:17 compact_monitor_2_1777367837441.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 12:22 compact_monitor_2_1777368160952.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 12:28 compact_monitor_2_1777368477571.mp4
-rw-r--r-- 1 lukas staff 267234 28 Apr 12:33 compact_monitor_2_1777368792600.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 12:38 compact_monitor_2_1777369107069.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 12:43 compact_monitor_2_1777369421530.mp4
-rw-r--r-- 1 lukas staff 266829 28 Apr 12:48 compact_monitor_2_1777369731189.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 12:54 compact_monitor_2_1777370048214.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 12:59 compact_monitor_2_1777370363567.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 13:04 compact_monitor_2_1777370679314.mp4
-rw-r--r-- 1 lukas staff 268855 28 Apr 13:09 compact_monitor_2_1777370994284.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 13:15 compact_monitor_2_1777371309064.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:20 compact_monitor_2_1777371623643.mp4
-rw-r--r-- 1 lukas staff 266559 28 Apr 13:25 compact_monitor_2_1777371938006.mp4
-rw-r--r-- 1 lukas staff 265479 28 Apr 13:30 compact_monitor_2_1777372252120.mp4
-rw-r--r-- 1 lukas staff 266964 28 Apr 13:36 compact_monitor_2_1777372566394.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 13:41 compact_monitor_2_1777372880197.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 13:46 compact_monitor_2_1777373193667.mp4
-rw-r--r-- 1 lukas staff 265209 28 Apr 13:51 compact_monitor_2_1777373506832.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 13:56 compact_monitor_2_1777373816197.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:02 compact_monitor_2_1777374130774.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 14:07 compact_monitor_2_1777374443527.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 14:12 compact_monitor_2_1777374756405.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:17 compact_monitor_2_1777375070551.mp4
-rw-r--r-- 1 lukas staff 264939 28 Apr 14:23 compact_monitor_2_1777375397987.mp4
-rw-r--r-- 1 lukas staff 267504 28 Apr 14:28 compact_monitor_2_1777375715930.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:33 compact_monitor_2_1777376034152.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 14:39 compact_monitor_2_1777376348246.mp4
-rw-r--r-- 1 lukas staff 266019 28 Apr 14:44 compact_monitor_2_1777376657026.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 14:49 compact_monitor_2_1777376966683.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 14:54 compact_monitor_2_1777377280571.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:00 compact_monitor_2_1777377602616.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:05 compact_monitor_2_1777377915467.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 15:10 compact_monitor_2_1777378232424.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:15 compact_monitor_2_1777378547117.mp4
-rw-r--r-- 1 lukas staff 266154 28 Apr 15:21 compact_monitor_2_1777378865359.mp4
-rw-r--r-- 1 lukas staff 264804 28 Apr 15:26 compact_monitor_2_1777379183376.mp4
-rw-r--r-- 1 lukas staff 267774 28 Apr 15:31 compact_monitor_2_1777379502714.mp4
-rw-r--r-- 1 lukas staff 268046 28 Apr 15:37 compact_monitor_2_1777379819259.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:42 compact_monitor_2_1777380134674.mp4
-rw-r--r-- 1 lukas staff 265749 28 Apr 15:47 compact_monitor_2_1777380454708.mp4
-rw-r--r-- 1 lukas staff 265344 28 Apr 15:52 compact_monitor_2_1777380771150.mp4
-rw-r--r-- 1 lukas staff 265884 28 Apr 15:58 compact_monitor_2_1777381086934.mp4
-rw-r--r-- 1 lukas staff 268044 28 Apr 16:03 compact_monitor_2_1777381401816.mp4
-rw-r--r-- 1 lukas staff 269530 28 Apr 16:08 compact_monitor_2_1777381720100.mp4
-rw-r--r-- 1 lukas staff 268721 28 Apr 16:13 compact_monitor_2_1777382037168.mp4
-rw-r--r-- 1 lukas staff 268583 28 Apr 16:19 compact_monitor_2_1777382355014.mp4
-rw-r--r-- 1 lukas staff 266424 28 Apr 16:24 compact_monitor_2_1777382670965.mp4
-rw-r--r-- 1 lukas staff 266289 28 Apr 16:29 compact_monitor_2_1777382984987.mp4
-rw-r--r-- 1 lukas staff 265074 28 Apr 16:34 compact_monitor_2_1777383298084.mp4
-rw-r--r-- 1 lukas staff 236209 28 Apr 16:40 compact_monitor_2_1777383610070.mp4
-rw-r--r-- 1 lukas staff 1191690 28 Apr 17:01 compact_monitor_2_1777384877981.mp4
-rw-r--r-- 1 lukas staff 2975861 28 Apr 17:06 compact_monitor_2_1777385201736.mp4
-rw-r--r-- 1 lukas staff 5319560 28 Apr 17:12 compact_monitor_2_1777385529432.mp4
-rw-r--r-- 1 lukas staff 3006284 28 Apr 17:18 compact_monitor_2_1777385870812.mp4
-rw-r--r-- 1 lukas staff 2726877 28 Apr 17:23 compact_monitor_2_1777386204715.mp4
-rw-r--r-- 1 lukas staff 3315722 28 Apr 17:29 compact_monitor_2_1777386541280.mp4
-rw-r--r-- 1 lukas staff 1577465 28 Apr 17:34 compact_monitor_2_1777386883461.mp4
-rw-r--r-- 1 lukas staff 1745214 28 Apr 17:40 compact_monitor_2_1777387214543.mp4
-rw-r--r-- 1 lukas staff 950993 28 Apr 17:45 compact_monitor_2_1777387552842.mp4
-rw-r--r-- 1 lukas staff 429007 28 Apr 17:51 compact_monitor_2_1777387889075.mp4
-rw-r--r-- 1 lukas staff 884099 28 Apr 17:57 compact_monitor_2_1777388218623.mp4
-rw-r--r-- 1 lukas staff 2352504 28 Apr 18:02 compact_monitor_2_1777388548021.mp4
-rw-r--r-- 1 lukas staff 3298542 28 Apr 18:07 compact_monitor_2_1777388874095.mp4
-rw-r--r-- 1 lukas staff 2143027 28 Apr 18:13 compact_monitor_2_1777389196097.mp4
-rw-r--r-- 1 lukas staff 2448311 28 Apr 18:18 compact_monitor_2_1777389532297.mp4
-rw-r--r-- 1 lukas staff 2780051 28 Apr 18:24 compact_monitor_2_1777389861076.mp4
-rw-r--r-- 1 lukas staff 2715534 28 Apr 18:29 compact_monitor_2_1777390193677.mp4
-rw-r--r-- 1 lukas staff 2102173 28 Apr 18:35 compact_monitor_2_1777390515997.mp4
-rw-r--r-- 1 lukas staff 2324557 28 Apr 18:40 compact_monitor_2_1777390843577.mp4
-rw-r--r-- 1 lukas staff 1525510 28 Apr 18:46 compact_monitor_2_1777391163945.mp4
-rw-r--r-- 1 lukas staff 2776584 28 Apr 18:51 compact_monitor_2_1777391495138.mp4
-rw-r--r-- 1 lukas staff 1168205 28 Apr 18:57 compact_monitor_2_1777391825305.mp4
-rw-r--r-- 1 lukas staff 1736686 28 Apr 19:02 compact_monitor_2_1777392149583.mp4
-rw-r--r-- 1 lukas staff 2133415 28 Apr 19:07 compact_monitor_2_1777392471754.mp4
-rw-r--r-- 1 lukas staff 1289951 28 Apr 19:13 compact_monitor_2_1777392794343.mp4
-rw-r--r-- 1 lukas staff 223494 28 Apr 19:18 compact_monitor_2_1777393110228.mp4
-rw-r--r-- 1 lukas staff 222168 28 Apr 19:23 compact_monitor_2_1777393424109.mp4
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data/2026-04-28 $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe/data $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 22523176
drwxr-xr-x 30 lukas staff 960 28 Apr 09:18 .
drwx------+ 93 lukas staff 2976 28 Apr 16:51 ..
-rw-r--r--@ 1 lukas staff 8196 26 Apr 17:14 .DS_Store
drwxr-xr-x 3 lukas staff 96 26 Apr 19:23 .claude
-rw-r--r-- 1 lukas staff 358 16 Apr 16:49 config.json
drwxr-xr-x 167 lukas staff 5344 18 Apr 14:45 data
-rw-r--r--@ 1 lukas staff 11525263360 28 Apr 19:33 db.sqlite
-rw-r--r-- 1 lukas staff 65536 28 Apr 15:26 db.sqlite-shm
-rw-r--r-- 1 lukas staff 2323712 28 Apr 22:23 db.sqlite-wal
drwxr-xr-x 9 lukas staff 288 15 Apr 14:53 pipes
-rw-r--r-- 1 lukas staff 132736 9 Apr 21:27 screenpipe.2026-04-09.0.log
-rw-r--r-- 1 lukas staff 95425 11 Apr 23:14 screenpipe.2026-04-11.0.log
-rw-r--r-- 1 lukas staff 72332 12 Apr 23:55 screenpipe.2026-04-12.0.log
-rw-r--r-- 1 lukas staff 71555 13 Apr 19:50 screenpipe.2026-04-13.0.log
-rw-r--r-- 1 lukas staff 162389 14 Apr 19:31 screenpipe.2026-04-14.0.log
-rw-r--r-- 1 lukas staff 175763 15 Apr 18:55 screenpipe.2026-04-15.0.log
-rw-r--r-- 1 lukas staff 196994 16 Apr 20:33 screenpipe.2026-04-16.0.log
-rw-r--r-- 1 lukas staff 208424 17 Apr 21:06 screenpipe.2026-04-17.0.log
-rw-r--r-- 1 lukas staff 61983 18 Apr 14:45 screenpipe.2026-04-18.0.log
-rw-r--r-- 1 lukas staff 359800 20 Apr 18:52 screenpipe.2026-04-20.0.log
-rw-r--r-- 1 lukas staff 683671 21 Apr 20:18 screenpipe.2026-04-21.0.log
-rw-r--r-- 1 lukas staff 284763 22 Apr 19:10 screenpipe.2026-04-22.0.log
-rw-r--r-- 1 lukas staff 176386 23 Apr 14:01 screenpipe.2026-04-23.0.log
-rw-r--r-- 1 lukas staff 276189 24 Apr 22:35 screenpipe.2026-04-24.0.log
-rw-r--r-- 1 lukas staff 68794 25 Apr 19:40 screenpipe.2026-04-25.0.log
-rw-r--r-- 1 lukas staff 75543 26 Apr 22:56 screenpipe.2026-04-26.0.log
-rw-r--r-- 1 lukas staff 607811 27 Apr 20:42 screenpipe.2026-04-27.0.log
-rw-r--r-- 1 lukas staff 396094 28 Apr 22:23 screenpipe.2026-04-28.0.log
-rwxr-xr-x@ 1 lukas staff 14994 25 Apr 18:50 screenpipe_sync.sh
-rw-r--r--@ 1 lukas staff 34227 26 Apr 17:01 sync.log
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 18:58:18] ========================================
[2026-05-06 18:58:18] Screenpipe sync starting for: 2026-04-27
[2026-05-06 18:58:18] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m04s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m06s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m07s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ⠧ Runtime error near line 3: disk I/O error (10)
frames (7543 rows) ⠴ %
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-27
[2026-05-06 19:22:16] ========================================
[2026-05-06 19:22:16] Screenpipe sync starting for: 2026-04-27
[2026-05-06 19:22:16] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (7.7G)
Data dir: OK (242 files, 325M)
[+00m01s] ▶ Counting source rows for 2026-04-27
frames: 7543
elements: 470235
ui_events: 9909
ocr_text: 2193
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m01s
creating FTS tables ✓ 0m00s
[+00m03s] ▶ Syncing data for 2026-04-27
video_chunks ✓ 0m11s
frames (7543 rows) ✓ 4m40s
ocr_text (2193 rows) ✓ 0m25s
ui_events (9909 rows) ✓ 0m02s
elements (470235 rows) ✓ 2m46s
meetings (3 rows) ✓ 0m00s
[+08m07s] ▶ Updating FTS indexes
elements_fts ✓ 2m59s
frames_fts ✓ 6m07s
ui_events_fts ✓ 0m03s
[+17m16s] ▶ Verifying DB
frames: 7543 / 7543 ✓
elements: 470235 / 470235 ✓
ui_events: 9909 / 9909 ✓
ocr_text: 2193 / 2193 ✓
meetings: 3 / 3 ✓
[+18m46s] ▶ Copying data folder for 2026-04-27
rsync 2026-04-27/ → NAS ✓ 0m26s (242 files, 325M)
[2026-05-06 19:41:28] Archive DB size: 9.7G
[2026-05-06 19:41:28] Total time: 19m12s
[2026-05-06 19:41:28] Sync complete for 2026-04-27
[2026-05-06 19:41:28] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ~/.screenpipe/screenpipe_sync.sh 2026-04-28
[2026-05-06 19:44:49] ========================================
[2026-05-06 19:44:49] Screenpipe sync starting for: 2026-04-28
[2026-05-06 19:44:49] ========================================
[+00m00s] ▶ Preflight checks
Source DB: OK ( 11G)
NAS mount: OK /Volumes/screenpipe
Archive DB: exists (9.7G)
Data dir: OK (223 files, 159M)
[+00m00s] ▶ Counting source rows for 2026-04-28
frames: 4535
elements: 407532
ui_events: 8621
ocr_text: 1623
meetings: 3
[+00m02s] ▶ Initialising tables, indexes, FTS
creating tables ✓ 0m00s
creating indexes ✓ 0m00s
creating FTS tables ✓ 0m00s
[+00m02s] ▶ Syncing data for 2026-04-28
video_chunks ✓ 0m12s
frames (4535 rows) ✓ 1m30s
ocr_text (1623 rows) ✓ 0m32s
ui_events (8621 rows) ✓ 0m01s
elements (407532 rows) ✓ 1m02s
meetings (3 rows) ✓ 0m00s
[+03m19s] ▶ Updating FTS indexes
elements_fts ✓ 1m36s
frames_fts ✓ 2m28s
ui_events_fts ✓ 0m04s
[+07m27s] ▶ Verifying DB
frames: 4535 / 4535 ✓
elements: 407532 / 407532 ✓
ui_events: 8621 / 8621 ✓
ocr_text: 1623 / 1623 ✓
meetings: 3 / 3 ✓
[+08m59s] ▶ Copying data folder for 2026-04-28
rsync 2026-04-28/ → NAS ✓ 0m20s (223 files, 159M)
[2026-05-06 19:54:08] Archive DB size: 10G
[2026-05-06 19:54:08] Total time: 9m19s
[2026-05-06 19:54:08] Sync complete for 2026-04-28
[2026-05-06 19:54:08] ========================================
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cat screenpipe_sync.sh
#!/bin/bash
# screenpipe_sync.sh
# Syncs Screenpipe SQLite data to a NAS archive database (append-only, no deletions).
# Also copies the day's video/frame data folder to the NAS.
#
# Usage:
# ./screenpipe_sync.sh # syncs yesterday (default)
# ./screenpipe_sync.sh 2026-04-15 # syncs a specific date
# ./screenpipe_sync.sh today # syncs today so far
#
# Cron example (runs at 3am daily):
# 0 3 * * * /Users/lukas/.screenpipe/screenpipe_sync.sh >> /Users/lukas/.screenpipe/sync.log 2>&1
set -euo pipefail
# ─── CONFIG ───────────────────────────────────────────────────────────────────
DB_SRC="${SCREENPIPE_DB:-$HOME/.screenpipe/db.sqlite}"
NAS_MOUNT="${NAS_MOUNT:-/Volumes/screenpipe}"
NAS_DB="$NAS_MOUNT/archive.db"
NAS_DATA="$NAS_MOUNT/data"
LOG_FILE="$HOME/.screenpipe/sync.log"
# ──────────────────────────────────────────────────────────────────────────────
# ─── HELPERS ──────────────────────────────────────────────────────────────────
SCRIPT_START=$(date +%s)
log() {
local msg="[$(date '+%Y-%m-%d %H:%M:%S')] $*"
echo "$msg" | tee -a "$LOG_FILE"
}
step() {
local now=$(date +%s)
local elapsed=$(( now - SCRIPT_START ))
local min=$(( elapsed / 60 ))
local sec=$(( elapsed % 60 ))
printf "\n[+%02dm%02ds] ▶ %s\n" "$min" "$sec" "$*" | tee -a "$LOG_FILE"
}
run_sqlite_heredoc() {
local label="$1"
local sql="$2"
local start=$(date +%s)
printf " %-36s " "$label"
sqlite3 "$DB_SRC" <<< "$sql" &
local pid=$!
local spin=[PASSWORD] '⠙' '⠹' '⠸' '⠼' '⠴' '⠦' '⠧' '⠇' '⠏')
local i=0
while kill -0 "$pid" 2>/dev/null; do
printf "\r %-36s %s " "$label" "${spin[$i]}"
i=$(( (i + 1) % 10 ))
sleep 0.2
done
wait "$pid"
local rc=$?
if [ $rc -ne 0 ]; then
printf "\r %-36s ✗ FAILED\n" "$label" | tee -a "$LOG_FILE"
exit $rc
fi
local dur=$(( $(date +%s) - start ))
printf "\r %-36s ✓ %dm%02ds\n" "$label" "$(( dur / 60 ))" "$(( dur % 60 ))" | tee -a "$LOG_FILE"
}
check() {
local label="$1" got="$2" expected="$3"
if [ "$got" -eq "$expected" ]; then
printf " %-20s %s / %s ✓\n" "$label:" "$got" "$expected"
else
printf " %-20s %s / %s ✗ MISMATCH\n" "$label:" "$got" "$expected"
fi
}
# ──────────────────────────────────────────────────────────────────────────────
# ─── DATE ARGUMENT ────────────────────────────────────────────────────────────
if [ "${1:-}" = "today" ]; then
TARGET_DATE=$(date +%Y-%m-%d)
elif [ -n "${1:-}" ]; then
TARGET_DATE="$1"
if ! [[ "$TARGET_DATE" =~ ^[0-9]{4}-[0-9]{2}-[0-9]{2}$ ]]; then
echo "ERROR: Invalid date format. Use YYYY-MM-DD, 'today', or no argument for yesterday."
exit 1
fi
else
TARGET_DATE=$(date -v-1d +%Y-%m-%d)
fi
log "========================================"
log "Screenpipe sync starting for: $TARGET_DATE"
log "========================================"
# ─── PREFLIGHT ────────────────────────────────────────────────────────────────
step "Preflight checks"
if [ ! -f "$DB_SRC" ]; then
log "ERROR: Source DB not found at $DB_SRC"; exit 1
fi
printf " %-20s %s (%s)\n" "Source DB:" "OK" "$(du -sh "$DB_SRC" | cut -f1)"
if [ ! -d "$NAS_MOUNT" ]; then
log "ERROR: NAS not mounted at $NAS_MOUNT"; exit 1
fi
printf " %-20s %s\n" "NAS mount:" "OK $NAS_MOUNT"
# Check if DB already synced for this date
DB_ALREADY_SYNCED=false
if [ -f "$NAS_DB" ]; then
EXISTING=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';" 2>/dev/null || echo "0")
if [ "$EXISTING" -gt "0" ]; then
log "Date $TARGET_DATE already has $EXISTING frames in archive — skipping DB sync"
DB_ALREADY_SYNCED=true
else
printf " %-20s %s (%s)\n" "Archive DB:" "exists" "$(du -sh "$NAS_DB" | cut -f1)"
fi
else
printf " %-20s %s\n" "Archive DB:" "will be created"
fi
# Source data dir for this date
DATA_SRC="$HOME/.screenpipe/data/data/$TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
DATA_SIZE=$(du -sh "$DATA_SRC" | cut -f1)
DATA_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
printf " %-20s %s (%s files, %s)\n" "Data dir:" "OK" "$DATA_FILES" "$DATA_SIZE"
else
printf " %-20s %s\n" "Data dir:" "not found — skipping file copy"
fi
# ─── DB SYNC ──────────────────────────────────────────────────────────────────
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── COUNT SOURCE ROWS ────────────────────────────────────────────────────
step "Counting source rows for $TARGET_DATE"
SRC_FRAMES=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
SRC_ELEMENTS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_UI=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
SRC_OCR=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
SRC_MEETINGS=$(sqlite3 "$DB_SRC" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start) = '$TARGET_DATE';")
printf " %-20s %s\n" "frames:" "$SRC_FRAMES"
printf " %-20s %s\n" "elements:" "$SRC_ELEMENTS"
printf " %-20s %s\n" "ui_events:" "$SRC_UI"
printf " %-20s %s\n" "ocr_text:" "$SRC_OCR"
printf " %-20s %s\n" "meetings:" "$SRC_MEETINGS"
if [ "$SRC_FRAMES" -eq "0" ]; then
log "No frames found for $TARGET_DATE — skipping DB sync"
DB_ALREADY_SYNCED=true
fi
fi
if [ "$DB_ALREADY_SYNCED" = false ]; then
# ─── INIT TABLES ──────────────────────────────────────────────────────────
step "Initialising tables, indexes, FTS"
run_sqlite_heredoc "creating tables" "
ATTACH '$NAS_DB' AS nas;
CREATE TABLE IF NOT EXISTS nas.frames AS SELECT * FROM main.frames WHERE 0;
CREATE TABLE IF NOT EXISTS nas.elements AS SELECT * FROM main.elements WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ui_events AS SELECT * FROM main.ui_events WHERE 0;
CREATE TABLE IF NOT EXISTS nas.ocr_text AS SELECT * FROM main.ocr_text WHERE 0;
CREATE TABLE IF NOT EXISTS nas.video_chunks AS SELECT * FROM main.video_chunks WHERE 0;
CREATE TABLE IF NOT EXISTS nas.meetings AS SELECT * FROM main.meetings WHERE 0;
DETACH nas;
"
run_sqlite_heredoc "creating indexes" "
ATTACH '$NAS_DB' AS nas;
CREATE INDEX IF NOT EXISTS nas.idx_frames_timestamp ON frames(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_frames_app_name ON frames(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_window_name ON frames(window_name);
CREATE INDEX IF NOT EXISTS nas.idx_frames_video_chunk_id ON frames(video_chunk_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_id ON elements(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_elements_frame_src_role ON elements(frame_id, source, role) WHERE text IS NOT NULL;
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_timestamp ON ui_events(timestamp);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_app_name ON ui_events(app_name);
CREATE INDEX IF NOT EXISTS nas.idx_ui_events_frame_id ON ui_events(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_ocr_text_frame_id ON ocr_text(frame_id);
CREATE INDEX IF NOT EXISTS nas.idx_meetings_start ON meetings(meeting_start);
CREATE INDEX IF NOT EXISTS nas.idx_video_chunks_device ON video_chunks(device_name);
DETACH nas;
"
run_sqlite_heredoc "creating FTS tables" "
ATTACH '$NAS_DB' AS nas;
CREATE VIRTUAL TABLE IF NOT EXISTS nas.elements_fts USING fts5(
text, role, frame_id UNINDEXED,
content='elements', content_rowid='id', tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.frames_fts USING fts5(
full_text, app_name, window_name, browser_url, id UNINDEXED,
tokenize='unicode61'
);
CREATE VIRTUAL TABLE IF NOT EXISTS nas.ui_events_fts USING fts5(
text_content,
app_name,
window_title,
element_name,
content='ui_events',
content_rowid='id',
tokenize='unicode61'
);
DETACH nas;
"
# ─── SYNC DATA ────────────────────────────────────────────────────────────
step "Syncing data for $TARGET_DATE"
run_sqlite_heredoc "video_chunks" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.video_chunks
SELECT * FROM main.video_chunks
WHERE id IN (
SELECT DISTINCT video_chunk_id FROM main.frames
WHERE date(timestamp) = '$TARGET_DATE' AND video_chunk_id IS NOT NULL
);
DETACH nas;
"
run_sqlite_heredoc "frames ($SRC_FRAMES rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.frames
SELECT * FROM main.frames WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ocr_text ($SRC_OCR rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ocr_text
SELECT o.* FROM main.ocr_text o
JOIN main.frames f ON o.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "ui_events ($SRC_UI rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.ui_events
SELECT * FROM main.ui_events WHERE date(timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "elements ($SRC_ELEMENTS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.elements
SELECT e.* FROM main.elements e
JOIN main.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE';
DETACH nas;
"
run_sqlite_heredoc "meetings ($SRC_MEETINGS rows)" "
ATTACH '$NAS_DB' AS nas;
INSERT OR IGNORE INTO nas.meetings
SELECT * FROM main.meetings WHERE date(meeting_start) = '$TARGET_DATE';
DETACH nas;
"
# ─── FTS UPDATE ───────────────────────────────────────────────────────────
step "Updating FTS indexes"
run_sqlite_heredoc "elements_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.elements_fts(rowid, text, role)
SELECT e.id, e.text, e.role
FROM nas.elements e
JOIN nas.frames f ON e.frame_id = f.id
WHERE date(f.timestamp) = '$TARGET_DATE'
AND e.text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "frames_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.frames_fts(rowid, full_text, app_name, window_name, browser_url, id)
SELECT id, full_text, app_name, window_name, browser_url, id
FROM nas.frames
WHERE date(timestamp) = '$TARGET_DATE'
AND full_text IS NOT NULL;
DETACH nas;
"
run_sqlite_heredoc "ui_events_fts" "
ATTACH '$NAS_DB' AS nas;
INSERT INTO nas.ui_events_fts(rowid, text_content, app_name, window_title, element_name)
SELECT id, text_content, app_name, window_title, element_name
FROM nas.ui_events
WHERE date(timestamp) = '$TARGET_DATE'
AND text_content IS NOT NULL;
DETACH nas;
"
# ─── VERIFY DB ────────────────────────────────────────────────────────────
step "Verifying DB"
V_FRAMES=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM frames WHERE date(timestamp) = '$TARGET_DATE';")
V_ELEMENTS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM elements WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_UI=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ui_events WHERE date(timestamp) = '$TARGET_DATE';")
V_OCR=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM ocr_text WHERE frame_id IN (SELECT id FROM frames WHERE date(timestamp) = '$TARGET_DATE');")
V_MEETINGS=$(sqlite3 "$NAS_DB" "SELECT COUNT(*) FROM meetings WHERE date(meeting_start)= '$TARGET_DATE';")
check "frames" "$V_FRAMES" "$SRC_FRAMES"
check "elements" "$V_ELEMENTS" "$SRC_ELEMENTS"
check "ui_events" "$V_UI" "$SRC_UI"
check "ocr_text" "$V_OCR" "$SRC_OCR"
check "meetings" "$V_MEETINGS" "$SRC_MEETINGS"
fi
# ─── COPY DATA FOLDER ─────────────────────────────────────────────────────────
# Always runs regardless of DB sync status
step "Copying data folder for $TARGET_DATE"
if [ -d "$DATA_SRC" ]; then
mkdir -p "$NAS_DATA/$TARGET_DATE"
RSYNC_START=$(date +%s)
printf " %-36s " "rsync $TARGET_DATE/ → NAS"
rsync -a --ignore-existing \
"$DATA_SRC/" \
"$NAS_DATA/$TARGET_DATE/" \
2>>"$LOG_FILE"
RSYNC_DUR=$(( $(date +%s) - RSYNC_START ))
COPIED_FILES=$(ls "$NAS_DATA/$TARGET_DATE" | wc -l | tr -d ' ')
SRC_FILES=$(ls "$DATA_SRC" | wc -l | tr -d ' ')
COPIED_SIZE=$(du -sh "$NAS_DATA/$TARGET_DATE" | cut -f1)
if [ "$COPIED_FILES" -eq "$SRC_FILES" ]; then
printf "\r %-36s ✓ %dm%02ds (%s files, %s)\n" \
"rsync $TARGET_DATE/ → NAS" \
"$(( RSYNC_DUR / 60 ))" "$(( RSYNC_DUR % 60 ))" \
"$COPIED_FILES" "$COPIED_SIZE" | tee -a "$LOG_FILE"
else
printf "\r %-36s ✗ %s / %s files\n" \
"rsync $TARGET_DATE/ → NAS" "$COPIED_FILES" "$SRC_FILES" | tee -a "$LOG_FILE"
fi
else
printf " %-36s %s\n" "rsync $TARGET_DATE/ → NAS" "skipped (no source dir)"
fi
# ─── SUMMARY ──────────────────────────────────────────────────────────────────
TOTAL_ELAPSED=$(( $(date +%s) - SCRIPT_START ))
DB_SIZE=$(du -sh "$NAS_DB" | cut -f1)
echo ""
log "Archive DB size: $DB_SIZE"
log "Total time: $(( TOTAL_ELAPSED / 60 ))m$(( TOTAL_ELAPSED % 60 ))s"
log "Sync complete for $TARGET_DATE"
log "========================================"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ pkill -f screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ rm -rf ~/.screenpipe/
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ ll
total 0
drwxr-xr-x 2 lukas staff 64 6 May 20:22 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.screenpipe $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd .npm
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ ll
total 24
drwx------ 9 lukas staff 288 28 Apr 09:18 .
drwx------+ 92 lukas staff 2944 6 May 20:22 ..
drwx------ 5 lukas staff 160 1 Nov 2021 _cacache
drwx------@ 2 lukas staff 64 28 Apr 09:18 _locks
drwx------ 15 lukas staff 480 27 Apr 19:54 _logs
drwxr-xr-x 67 lukas staff 2144 28 Apr 09:17 _npx
-rw-r--r--@ 1 lukas staff 0 26 Apr 19:10 _update-notifier-last-checked
-rw-r--r-- 1 lukas staff 173 28 Apr 09:18 anonymous-cli-metrics.json
-rw-r--r-- 1 lukas staff 4764 31 Jan 2024 eresolve-report.txt
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ rm -rf ~/.npm/_npx
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~/.npm $ cd ..
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ ll
total 52920
drwx------+ 92 lukas staff 2944 6 May 20:22 .
drwxr-xr-x 5 root admin 160 23 Aug 2024 ..
-r-------- 1 lukas staff 7 18 Nov 2021 .CFUserTextEncoding
-rw-r--r--@ 1 lukas staff 28676 27 Apr 09:11 .DS_Store
drwx------+ 10 lukas staff 320 28 Apr 17:07 .Trash
drwx------ 5 lukas staff 160 1 Nov 2021 .aws
-rw-r--r-- 1 lukas staff 341470 29 Sep 2022 .babel.json
-rw-------@ 1 lukas staff 388 25 Jul 2025 .bash_history
-rw-r--r--@ 1 lukas staff 115 18 Apr 13:19 .bashrc
drwxr-xr-x 5 lukas staff 160 11 Mar 2023 .bito
drwx------@ 6 lukas staff 192 9 Apr 19:53 .cache
drwxr-xr-x 20 lukas staff 640 27 Apr 08:58 .claude
-rw------- 1 lukas staff 28647 27 Apr 09:12 .claude.json
drwxr-xr-x@ 20 lukas staff 640 12 Mar 09:12 .codeium
drwxrwxrwx@ 3 lukas staff 96 2 Mar 2023 .composer
drwx------ 16 lukas staff 512 21 May 2025 .config
drwxr-xr-x 15 lukas staff 480 23 Dec 2024 .continue
drwx------@ 3 lukas staff 96 16 Feb 19:13 .copilot
drwxr-xr-x@ 5 lukas staff 160 9 Apr 2025 .cursor
drwxr-xr-x@ 5 lukas staff 160 17 Aug 2024 .cursor-tutor
drwxr-xr-x 3 lukas staff 96 8 Sep 2024 .daytona
drwxr-xr-x@ 4 lukas staff 128 18 Feb 10:52 .devdb
drwx------ 24 lukas staff 768 27 Apr 18:14 .docker
drwx------ 15 lukas staff 480 6 Jun 2023 .dropbox
drwxr-xr-x@ 3 lukas staff 96 20 Nov 2022 .fig.dotfiles.bak
-rw-r--r-- 1 lukas staff 138 5 Mar 2022 .gauth
-rw-r--r-- 1 lukas staff 220 25 Nov 2021 .gitconfig
-rw-r--r-- 1 lukas staff 12288 25 Nov 2021 .gitconfig.swp
drwx------ 5 lukas staff 160 18 Nov 2021 .hammerspoon
drwxr-xr-x 3 lukas staff 96 21 Mar 2025 .idlerc
-rw------- 1 lukas staff 20 28 Apr 16:51 .lesshst
drwx------ 5 lukas staff 160 23 Dec 2024 .local
-rw------- 1 lukas staff 204 16 Mar 2024 .netrc
drwx------ 3 lukas staff 96 1 Nov 2021 .node-gyp
-rw------- 1 lukas staff 4 6 Feb 2024 .node_repl_history
-rw-r--r-- 1 lukas staff 17 24 Dec 2023 .notion-enhancer
drwxr-xr-x 4 lukas staff 128 12 Jul 2024 .notion-py
drwx------ 8 lukas staff 256 6 May 20:24 .npm
-rw------- 1 lukas staff 74 20 May 2024 .npmrc
drwx------ 32 lukas staff 1024 25 Jul 2025 .nvm
drwxr-xr-x 4 lukas staff 128 5 Aug 2023 .postman
-rw-r--r--@ 1 lukas staff 77 9 Feb 2023 .profile
-rw-------@ 1 lukas staff 3153 21 Mar 2025 .python_history
drwx------ 2 lukas staff 64 15 Nov 2021 .quicktype-vscode
drwxr-xr-x@ 8 lukas staff 256 16 Feb 08:48 .redis-insight
drwxr-xr-x 4 lukas staff 128 4 Feb 09:35 .sonarlint
drwx------ 15 lukas staff 480 8 Aug 2025 .ssh
drwxr-xr-x@ 3 lukas staff 96 15 Aug 2025 .streamlit
drwx------ 6 lukas staff 192 17 Oct 2022 .swiftpm
-rw------- 1 lukas staff 12143 27 Apr 14:58 .viminfo
drwx------ 5 lukas staff 160 19 Jun 2023 .vscode
drwxr-xr-x@ 3 lukas staff 96 20 Jan 2025 .warp
UW PICO 5.09 New Buffer
[ Read 1 line ]
^G Get Help ^O WriteOut ^R Read File ^Y Prev Pg ^K Cut Text ^C Cur Pos
^X Exit ^J Justify ^W Where is ^V Next Pg ^U UnCut Text ^T To Spell
drwxr-xr-x 4 lukas staff 128 29 Apr 2023 .wdm
drwxr-xr-x@ 5 lukas staff 160 26 Jan 13:03 .windsurf
drwxr-xr-x 4 lukas staff 128 24 Mar 12:03 .yarn
-rw-r--r-- 1 lukas staff 116 30 Mar 10:12 .yarnrc
-rw-r--r-- 1 lukas staff 49518 21 Apr 09:09 .zcompdump
-rw-r--r--@ 1 lukas staff 46758 2 Nov 2025 .zcompdump.Lukas-Kovaliks-MacBook-Pro-Jiminny.23381
-rw-r--r--@ 1 lukas staff 6116 20 Apr 19:52 .zprofile
-rw-r--r-- 1 lukas staff 1468 8 Apr 2022 .zprofile-copy
-rw-r--r--@ 1 lukas staff 2900 15 Mar 2023 .zprofile.pysave
-rw------- 1 lukas staff 1731 29 Jun 2022 .zprofile.save
-rw-r--r-- 1 lukas staff 1569 8 Apr 2022 .zprofilees
-rw------- 1 lukas staff 50310 28 Apr 11:32 .zsh_history
drwx------ 9 lukas staff 288 6 May 2025 .zsh_sessions
-rw-r--r--@ 1 lukas staff 400 18 Apr 13:19 .zshrc
drwx------@ 9 lukas staff 288 20 Apr 20:55 Applications
drwxr-xr-x@ 2 lukas staff 64 22 Oct 2025 CascadeProjects
drwxr-xr-x 4 lukas staff 128 27 Oct 2025 DEV
drwx------@ 10 lukas staff 320 28 Apr 18:52 Desktop
drwx------@ 7 lukas staff 224 26 Mar 14:40 Documents
drwx------@ 44 lukas staff 1408 24 Apr 16:53 Downloads
drwxr-xr-x@ 4 lukas staff 128 17 Mar 20:27 Keychron_Screen
drwx------@ 112 lukas staff 3584 2 Dec 09:19 Library
drwx------ 7 lukas staff 224 12 Feb 2024 Movies
drwx------+ 5 lukas staff 160 25 Sep 2023 Music
drwx------+ 9 lukas staff 288 25 Sep 2023 Pictures
drwx------ 3 lukas staff 96 8 Nov 2021 Postman
drwx------+ 4 lukas staff 128 28 Oct 2021 Public
-rw-r--r--@ 1 lukas staff 3950 15 Dec 09:16 Untitled 4.spf
drwx------ 4 lukas staff 128 2 Jul 2023 Users
-rw-r--r-- 1 lukas staff 17050804 27 Apr 19:18 cleanshot-live.log
-rw-r--r-- 1 lukas staff 9363061 27 Apr 19:24 cleanshot-screenpipe.log
-rw-r--r-- 1 lukas staff 0 12 Apr 12:50 clip.mp4
-rw-r--r-- 1 lukas staff 0 12 Apr 12:51 frame.jpg
drwx------ 3 lukas staff 96 30 Sep 2022 iCloud Drive (Archive)
drwx------ 16 lukas staff 512 3 Nov 2025 jiminny
drwxr-xr-x 3 lukas staff 96 20 Mar 18:47 node_modules
drwxr-xr-x 4 lukas staff 128 21 Oct 2025 raycast
-rw-r--r-- 1 lukas staff 0 1 Mar 14:26 response.bin
-rwxr-xr-x 1 lukas staff 3824 11 Apr 15:16 screenpipe-day.sh
-rw-r--r-- 1 lukas staff 86 20 Mar 18:47 yarn.lock
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ cd ~/.screenpipe
cd: no such file or directory: /Users/lukas/.screenpipe
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ touch screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ nano screenpipe_sync.sh
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ npx screenpipe@latest record --ignored-windows "Boosteroid" --retention-days 7
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-06T20:27:32.721416Z INFO screenpipe_engine::auth_key: api auth: key resolved via auto-generated
checking permissions...
screen recording: ok
microphone: ok
accessibility: ok
2026-05-06T20:27:32.831033Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-06T20:27:34.088403Z INFO scree...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
2141
|
98
|
53
|
2026-05-07T11:03:09.701230+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778151789701_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-07T10:18:21.374558Z INFO screenpipe_engin 2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted
2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted
2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)
2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames
2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted
2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted
2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted
2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted
2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content ...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:40:28.894164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8172588032256589366, trigger=click)\n2026-05-07T13:41:05.629162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:41:42.231989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:42:27.461393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:43:27.588934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T13:43:28.507612Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.0MB → 0.3MB (6.5x), 13 JPEGs deleted\n2026-05-07T13:43:29.769314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.3x), 13 JPEGs deleted\n2026-05-07T13:44:20.146695Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n2026-05-07T13:44:23.233927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:46:53.879047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.273642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.353655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.855945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.932141Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.438820Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.529925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.028701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.495358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.589700Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.017435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.525687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.596526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.200272Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.273351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.889581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.965296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.558223Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.638900Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.002895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.069500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.601734Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.670225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.197080Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.272125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.553758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.626566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.115801Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.156912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:29.770264Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T13:48:30.599687Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.3MB (6.2x), 11 JPEGs deleted\n2026-05-07T13:48:31.801685Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 1.1MB (1.9x), 10 JPEGs deleted\n2026-05-07T13:49:03.555435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:03.619351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:08.513044Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:49:32.229884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:32.275136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.321265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.362703Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.425210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.494428Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.044489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.089054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.000906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.064778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:18.403111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:50:21.417012Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:50:50.323146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:54.645830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:00.417691Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:00.445335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:01.044868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:04.050841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:13.084629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:15.076864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:15.138819Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:17.928991Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.143384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.229679Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:21.491384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:56.012961Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:11.364110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:52:17.241888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:26.296132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:53:16.509325Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:17.741131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:53:20.999674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:21.106244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:31.807492Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-07T13:53:33.013410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.2MB → 0.9MB (2.3x), 16 JPEGs deleted\n2026-05-07T13:53:34.215985Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.0MB (2.8x), 16 JPEGs deleted\n2026-05-07T13:54:18.281052Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:54:38.401771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:54:38.471173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:55:46.085221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:58:34.223906Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T13:58:35.914466Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 2.9MB → 0.2MB (11.6x), 26 JPEGs deleted\n2026-05-07T13:58:38.246300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.4MB → 2.0MB (2.7x), 31 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T14:01:16.075410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T14:01:24.771839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:24.849079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:31.213013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:01:31.266705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:02:17.089553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:02:24.596587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:03:07.430985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5702711611747998546, trigger=visual_change)","depth":4,"on_screen":true,"value":"2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:40:28.894164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8172588032256589366, trigger=click)\n2026-05-07T13:41:05.629162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:41:42.231989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:42:27.461393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:43:27.588934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T13:43:28.507612Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.0MB → 0.3MB (6.5x), 13 JPEGs deleted\n2026-05-07T13:43:29.769314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.3x), 13 JPEGs deleted\n2026-05-07T13:44:20.146695Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n2026-05-07T13:44:23.233927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:46:53.879047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.273642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.353655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.855945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.932141Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.438820Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.529925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.028701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.495358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.589700Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.017435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.525687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.596526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.200272Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.273351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.889581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.965296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.558223Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.638900Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.002895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.069500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.601734Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.670225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.197080Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.272125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.553758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.626566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.115801Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.156912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:29.770264Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T13:48:30.599687Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.3MB (6.2x), 11 JPEGs deleted\n2026-05-07T13:48:31.801685Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 1.1MB (1.9x), 10 JPEGs deleted\n2026-05-07T13:49:03.555435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:03.619351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:08.513044Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:49:32.229884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:32.275136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.321265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.362703Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.425210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.494428Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.044489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.089054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.000906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.064778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:18.403111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:50:21.417012Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:50:50.323146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:54.645830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:00.417691Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:00.445335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:01.044868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:04.050841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:13.084629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:15.076864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:15.138819Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:17.928991Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.143384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.229679Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:21.491384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:56.012961Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:11.364110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:52:17.241888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:26.296132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:53:16.509325Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:17.741131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:53:20.999674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:21.106244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:31.807492Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-07T13:53:33.013410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.2MB → 0.9MB (2.3x), 16 JPEGs deleted\n2026-05-07T13:53:34.215985Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.0MB (2.8x), 16 JPEGs deleted\n2026-05-07T13:54:18.281052Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:54:38.401771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:54:38.471173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:55:46.085221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:58:34.223906Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T13:58:35.914466Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 2.9MB → 0.2MB (11.6x), 26 JPEGs deleted\n2026-05-07T13:58:38.246300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.4MB → 2.0MB (2.7x), 31 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T14:01:16.075410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T14:01:24.771839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:24.849079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:31.213013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:01:31.266705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:02:17.089553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:02:24.596587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:03:07.430985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5702711611747998546, trigger=visual_change)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0787899,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.34906915,"top":1.0,"width":0.0787899,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.35106382,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.42785904,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42985374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5064827,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5084774,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5851064,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.58710104,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.66373,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.66572475,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
7460398780847719900
|
2716136865745446267
|
click
|
accessibility
|
NULL
|
2026-05-07T10:18:21.374558Z INFO screenpipe_engin 2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted
2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted
2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)
2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames
2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted
2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted
2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted
2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted
2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content ...
|
2139
|
NULL
|
NULL
|
NULL
|
|
2140
|
97
|
44
|
2026-05-07T11:03:09.626852+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778151789626_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-07T10:18:21.374558Z INFO screenpipe_engin 2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted
2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted
2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)
2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames
2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted
2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted
2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted
2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted
2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content ...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:40:28.894164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8172588032256589366, trigger=click)\n2026-05-07T13:41:05.629162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:41:42.231989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:42:27.461393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:43:27.588934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T13:43:28.507612Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.0MB → 0.3MB (6.5x), 13 JPEGs deleted\n2026-05-07T13:43:29.769314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.3x), 13 JPEGs deleted\n2026-05-07T13:44:20.146695Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n2026-05-07T13:44:23.233927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:46:53.879047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.273642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.353655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.855945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.932141Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.438820Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.529925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.028701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.495358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.589700Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.017435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.525687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.596526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.200272Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.273351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.889581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.965296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.558223Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.638900Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.002895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.069500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.601734Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.670225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.197080Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.272125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.553758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.626566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.115801Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.156912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:29.770264Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T13:48:30.599687Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.3MB (6.2x), 11 JPEGs deleted\n2026-05-07T13:48:31.801685Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 1.1MB (1.9x), 10 JPEGs deleted\n2026-05-07T13:49:03.555435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:03.619351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:08.513044Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:49:32.229884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:32.275136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.321265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.362703Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.425210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.494428Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.044489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.089054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.000906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.064778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:18.403111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:50:21.417012Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:50:50.323146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:54.645830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:00.417691Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:00.445335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:01.044868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:04.050841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:13.084629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:15.076864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:15.138819Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:17.928991Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.143384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.229679Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:21.491384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:56.012961Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:11.364110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:52:17.241888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:26.296132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:53:16.509325Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:17.741131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:53:20.999674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:21.106244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:31.807492Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-07T13:53:33.013410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.2MB → 0.9MB (2.3x), 16 JPEGs deleted\n2026-05-07T13:53:34.215985Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.0MB (2.8x), 16 JPEGs deleted\n2026-05-07T13:54:18.281052Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:54:38.401771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:54:38.471173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:55:46.085221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:58:34.223906Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T13:58:35.914466Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 2.9MB → 0.2MB (11.6x), 26 JPEGs deleted\n2026-05-07T13:58:38.246300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.4MB → 2.0MB (2.7x), 31 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T14:01:16.075410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T14:01:24.771839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:24.849079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:31.213013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:01:31.266705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:02:17.089553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:02:24.596587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:03:07.430985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5702711611747998546, trigger=visual_change)","depth":4,"on_screen":true,"value":"2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:40:28.894164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8172588032256589366, trigger=click)\n2026-05-07T13:41:05.629162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:41:42.231989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:42:27.461393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1110953375923320627, trigger=visual_change)\n2026-05-07T13:43:27.588934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T13:43:28.507612Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.0MB → 0.3MB (6.5x), 13 JPEGs deleted\n2026-05-07T13:43:29.769314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.3x), 13 JPEGs deleted\n2026-05-07T13:44:20.146695Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n2026-05-07T13:44:23.233927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6816928366423420884, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:46:53.879047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.273642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.353655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.855945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:55.932141Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.438820Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:57.529925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.028701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.495358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:58.589700Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.017435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.525687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:46:59.596526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.200272Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.273351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.889581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:00.965296Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.558223Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:01.638900Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.002895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.069500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.601734Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:03.670225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.197080Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:47:04.272125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.553758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:10.626566Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.115801Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:16.156912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:48:29.770264Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T13:48:30.599687Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.3MB (6.2x), 11 JPEGs deleted\n2026-05-07T13:48:31.801685Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 1.1MB (1.9x), 10 JPEGs deleted\n2026-05-07T13:49:03.555435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:03.619351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:08.513044Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:49:32.229884Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:32.275136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.321265Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:34.362703Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.425210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:39.494428Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.044489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:43.089054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.000906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:49:46.064778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:18.403111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:50:21.417012Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:50:50.323146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:50:54.645830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:00.417691Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:00.445335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:01.044868Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:04.050841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:13.084629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:51:15.076864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:15.138819Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:17.928991Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.143384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:19.229679Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:21.491384Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:51:56.012961Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:11.364110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:52:17.241888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:52:26.296132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T13:53:16.509325Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:17.741131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:53:20.999674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:21.106244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:53:31.807492Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-07T13:53:33.013410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.2MB → 0.9MB (2.3x), 16 JPEGs deleted\n2026-05-07T13:53:34.215985Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.0MB (2.8x), 16 JPEGs deleted\n2026-05-07T13:54:18.281052Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:54:38.401771Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:54:38.471173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:55:46.085221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:58:34.223906Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T13:58:35.914466Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 2.9MB → 0.2MB (11.6x), 26 JPEGs deleted\n2026-05-07T13:58:38.246300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.4MB → 2.0MB (2.7x), 31 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T14:01:16.075410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T14:01:24.771839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:24.849079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2967751011570987254, trigger=click)\n2026-05-07T14:01:31.213013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:01:31.266705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6036284555919122660, trigger=click)\n2026-05-07T14:02:17.089553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:02:24.596587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8553528811773904917, trigger=click)\n2026-05-07T14:03:07.430985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5702711611747998546, trigger=visual_change)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.16458334,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.16458334,"top":0.05888889,"width":0.16458334,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.16875,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.32916668,"top":0.05888889,"width":0.16423611,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33333334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.49340278,"top":0.05888889,"width":0.16423611,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.49756944,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.6576389,"top":0.05888889,"width":0.16423611,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.66180557,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.821875,"top":0.05888889,"width":0.16423611,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.82604164,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
7460398780847719900
|
2716136865745446267
|
click
|
accessibility
|
NULL
|
2026-05-07T10:18:21.374558Z INFO screenpipe_engin 2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted
2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted
2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)
2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)
2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)
2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames
2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted
2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted
2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted
2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted
2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)
2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)
2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)
2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content ...
|
2138
|
NULL
|
NULL
|
NULL
|
|
1911
|
90
|
8
|
2026-05-07T10:40:28.779247+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778150428779_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","depth":4,"on_screen":true,"value":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-8172588032256589366
|
2716136865745446267
|
click
|
accessibility
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
1910
|
89
|
6
|
2026-05-07T10:40:24.148389+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778150424148_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","depth":4,"on_screen":true,"value":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-8172588032256589366
|
2716136865745446267
|
visual_change
|
accessibility
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
1909
|
90
|
7
|
2026-05-07T10:40:23.489022+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778150423489_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","depth":4,"on_screen":true,"value":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-8172588032256589366
|
2716136865745446267
|
click
|
accessibility
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
1908
|
89
|
5
|
2026-05-07T10:40:23.556399+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778150423556_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","depth":4,"on_screen":true,"value":"2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)\n2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)\n2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)\n2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)\n2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)\n2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)\n2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)\n2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)\n2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted\n2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted\n2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)\n2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)\n2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)\n2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)\n2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames\n2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted\n2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted\n2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)\n2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)\n2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)\n2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)\n2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames\n2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted\n2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted\n2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames\n2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted\n2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted\n2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)\n2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)\n2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)\n2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted\n2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)\n2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted\n2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)\n2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted\n2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted\n2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted\n2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted\n2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)\n2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted\n2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted\n2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)\n2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)\n2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)\n2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)\n2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted\n2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted\n2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames\n2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted\n2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted\n2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)\n2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)\n2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted\n2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted\n2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)\n2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)\n2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)\n2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)\n2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=visual_change)\n2026-05-07T11:17:32.802525Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T11:17:33.719103Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.1x), 13 JPEGs deleted\n2026-05-07T11:17:35.285795Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 3.2MB → 1.9MB (1.7x), 15 JPEGs deleted\n2026-05-07T11:20:09.287243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1113449299881994885, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:21:04.601763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.195829Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:05.286304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:07.276282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=visual_change)\n2026-05-07T11:21:07.777421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.629026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:13.684368Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:21:20.314652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:22:35.312878Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 35 eligible frames\n2026-05-07T11:22:36.542655Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 2.8MB → 0.3MB (11.1x), 19 JPEGs deleted\n2026-05-07T11:22:37.886380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.9MB → 1.4MB (2.1x), 14 JPEGs deleted\n2026-05-07T11:24:10.600218Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.658727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:16.744250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:17.259922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.786638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:19.868844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:24:35.113724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:25:31.482893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:25:31.571840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:26:14.372219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:14.474811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.108321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:16.208931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.179453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.261532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:19.866610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:22.898361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:24.804817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:24.843000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.614460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:25.699649Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.157175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:26.240503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.134680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.186484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:29.947299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:30.055213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.884556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:32.980451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:33.854993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:34.813905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:46.232735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.813359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:53.904687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.896284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:54.939177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.477051Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:55.548442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.460709Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:56.544450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.234557Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.310735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:57.927276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:26:59.853475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:26:59.951408Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:09.984206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:13.639304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:16.675677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:27:21.707146Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:21.788450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.382630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:22.458852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.512005Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:23.593854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:37.895015Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-07T11:27:38.069671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:39.415803Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (12.6x), 24 JPEGs deleted\n2026-05-07T11:27:41.361532Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 1.7MB (3.7x), 29 JPEGs deleted\n2026-05-07T11:27:44.250056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:44.946799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.012823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:45.951481Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.036903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.637934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:46.720109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:27:47.898633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:28:32.963811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:33.481808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.408327Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.488526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:35.994222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:28:36.073882Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.676505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:07.769948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.301825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:08.392673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:13.250663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=visual_change)\n2026-05-07T11:29:13.294785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:29:17.380342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.544137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:37.634170Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.420444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:47.475449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.368787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:57.449313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.656398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:29:58.700861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.303798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:02.375032Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.525410Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:06.609717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.066906Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.152971Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.730641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:11.840469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.165235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.256534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:13.771120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:30:17.830665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7559882277336721044, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:30:29.607143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:30.855373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:31.798547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:32.660076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.545854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:33.625096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.913569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:34.959858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:37.162643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:30:37.385639Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.031545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:38.116866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.169948Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:39.259572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.527175Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:40.663315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.379199Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:41.468807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.650877Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:30:42.740500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:32:41.370577Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-07T11:32:42.591649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 2.7MB → 0.2MB (11.1x), 18 JPEGs deleted\n2026-05-07T11:32:44.047625Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.5MB → 1.4MB (2.5x), 18 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:37:06.389462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:06.466281Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:28.280110Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=visual_change)\n2026-05-07T11:37:41.209760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:41.296570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:37:44.057154Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T11:37:45.150553Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.2MB (11.4x), 17 JPEGs deleted\n2026-05-07T11:37:46.544560Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.6MB → 1.4MB (2.5x), 18 JPEGs deleted\n2026-05-07T11:38:17.950539Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:18.029604Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6914507834998031082, trigger=click)\n2026-05-07T11:38:20.269053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:20.353278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:26.285456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:34.496832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.612943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:41.688620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3611185280572927506, trigger=click)\n2026-05-07T11:38:47.310133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:48.643821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=visual_change)\n2026-05-07T11:38:53.314725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:53.365162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.877985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:55.979184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.923016Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:38:59.982414Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.423200Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:08.479561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.091274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:11.169322Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.367209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=717162728355553312, trigger=click)\n2026-05-07T11:39:58.477249Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=717162728355553312, trigger=click)\n2026-05-07T11:40:14.228738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)\n2026-05-07T11:40:21.537879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:21.581390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T11:40:36.353346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:36.463711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:49.571416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:49.654026Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)\n2026-05-07T11:40:57.307589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:40:57.395762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9165635897862516013, trigger=click)\n2026-05-07T11:41:13.867353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:13.928949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.749125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:17.841126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.855869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:22.960960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.038976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:47.120690Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.494287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:48.585592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:41:49.576901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:00.369375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-462369777689901873, trigger=click)\n2026-05-07T11:42:13.959329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.026209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.622501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:14.689856Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.808673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:18.899424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3903176429731934098, trigger=click)\n2026-05-07T11:42:46.587102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-07T11:42:47.879737Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.5MB → 0.3MB (10.1x), 17 JPEGs deleted\n2026-05-07T11:42:49.387681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.9MB → 1.2MB (3.9x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T11:47:49.401447Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T11:47:50.208589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T11:47:51.105616Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.6MB (2.7x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T11:52:51.115227Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 56 eligible frames\n2026-05-07T11:52:52.599464Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.6MB → 0.3MB (13.9x), 24 JPEGs deleted\n2026-05-07T11:52:54.560895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 6.2MB → 1.9MB (3.3x), 30 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T11:57:54.573830Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames\n2026-05-07T11:57:56.537978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 33 frames, 4.9MB → 0.2MB (20.1x), 33 JPEGs deleted\n2026-05-07T11:57:59.634910Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 9.7MB → 3.4MB (2.9x), 49 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:02:17.686782Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2133922751020830860, trigger=visual_change)\n2026-05-07T12:02:59.643300Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T12:03:00.506915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 1.9MB → 0.2MB (8.5x), 13 JPEGs deleted\n2026-05-07T12:03:01.563777Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 3.0MB → 1.0MB (3.0x), 13 JPEGs deleted\n2026-05-07T12:04:53.950346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3936664232520672675, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:06:14.021068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:14.046202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1904144779975232761, trigger=click)\n2026-05-07T12:06:55.098053Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1904144779975232761, trigger=visual_change)\n2026-05-07T12:08:01.595956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T12:08:02.406935Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.6x), 11 JPEGs deleted\n2026-05-07T12:08:03.377690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.8MB → 0.7MB (4.1x), 13 JPEGs deleted\n2026-05-07T12:10:01.495047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6040441481645590785, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:12:45.130331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:45.204999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.701284Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:46.776821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.515192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:48.562862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.373159Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:49.443078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.081799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:50.154173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.476901Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:51.550302Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.594583Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:52.672365Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:56.959921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:12:57.036755Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:03.388286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-07T12:13:05.135842Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 4.2MB → 0.2MB (18.5x), 28 JPEGs deleted\n2026-05-07T12:13:07.057256Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 6.3MB → 0.8MB (7.5x), 29 JPEGs deleted\n2026-05-07T12:13:13.459440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.098171Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:18.187078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.059680Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:26.133713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.500677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:31.578547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.066474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:33.129912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.223353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:34.293832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:39.930990Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:13:52.634589Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.147936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:55.220630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.045740Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:13:56.109310Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:01.075359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T12:14:04.325896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:04.406144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.140644Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:06.206462Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T12:14:29.985517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:18:07.069039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T12:18:07.867619Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.5x), 11 JPEGs deleted\n2026-05-07T12:18:08.975579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.1MB → 1.2MB (1.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:23:08.999593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-07T12:23:10.051832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.8x), 16 JPEGs deleted\n2026-05-07T12:23:11.590753Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.8MB → 1.6MB (3.1x), 22 JPEGs deleted\n2026-05-07T12:24:50.902079Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T12:25:02.699344Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-07T12:25:03.063441Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=idle, monitor=1) — DB pool may be saturated\n2026-05-07T12:25:03.829083Z WARN screenpipe_engine::event_driven_capture: event capture timed out (trigger=app_switch, monitor=2) — DB pool may be saturated\n2026-05-07T12:25:17.192220Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T12:28:11.573780Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 32 eligible frames\n2026-05-07T12:28:12.524840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.1MB → 0.2MB (8.7x), 14 JPEGs deleted\n2026-05-07T12:28:13.791810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.7MB → 1.2MB (3.1x), 16 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T12:33:13.799734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T12:33:14.558749Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (6.2x), 9 JPEGs deleted\n2026-05-07T12:33:15.348500Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.3MB → 0.4MB (5.9x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T12:38:15.357399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 8 eligible frames\n2026-05-07T12:38:15.816171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.4MB → 0.2MB (2.2x), 3 JPEGs deleted\n2026-05-07T12:38:16.254230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 3 frames, 0.7MB → 0.4MB (1.9x), 3 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T12:43:16.262353Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:07:24.076660Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T13:07:24.102897Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-07T13:07:24.297606Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T13:07:24.438779Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-07T13:07:24.546499Z WARN screenpipe_engine::event_driven_capture: skipping capture: lock screen app 'loginwindow' on monitor 1\n2026-05-07T13:07:24.546789Z INFO screenpipe_engine::event_driven_capture: monitor 1 capture recovered after 1 consecutive errors\n2026-05-07T13:07:25.881431Z INFO screenpipe_engine::event_driven_capture: monitor 2 capture recovered after 1 consecutive errors\n2026-05-07T13:07:39.289686Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:07:39.356439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:10:51.802242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:53.246828Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:53.292192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.827092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:54.874984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:10:56.453651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:10:56.532105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.156872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:09.272079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:19.456862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:11:23.255674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.235027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:29.300463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:11:41.268824Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:41.346426Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:11:49.696283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:11:50.709029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:50.793731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:11:54.048592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:11:55.722993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:11:58.771504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:00.230150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:00.309597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.873337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:05.950486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:07.816982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:09.743925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.759622Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:11.804675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.038098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:13.121377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:15.163387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:22.598075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:23.526288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:24.493443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:26.736713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.330422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:27.407022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.302329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:39.350946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:47.769162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:50.995875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:12:52.144495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:12:58.271241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.612413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:03.656449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.027919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:38.100405Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.215995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:40.263713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.234028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:45.309845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.731517Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:46.778945Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.075161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.152467Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:49.945716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:50.041550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.455315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:51.630152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.664766Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:13:52.744356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:00.495706Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.379219Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:07.502722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:14:16.805088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.109167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:23.184746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.828599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:27.899135Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:30.021341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=visual_change)\n2026-05-07T13:14:35.402490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:35.477025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.472439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:14:36.548283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7600783106539747892, trigger=click)\n2026-05-07T13:15:19.197568Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:19.246812Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:15:25.147280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:25.232582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.174374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:27.220750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.363878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:28.524216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:29.203015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.054354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:53.121592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.539633Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:15:54.581558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.862431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:07.939090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:16:25.341565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:25.381896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:27.965229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.016430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.660064Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:28.737222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:29.420531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:32.873097Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:16:37.093234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.160634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.798631Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:37.874888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:16:38.583600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:17:25.422274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:31.421731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:17:34.407811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:16.337476Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 12 eligible frames\n2026-05-07T13:18:16.957708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 5 frames, 0.7MB → 0.2MB (3.5x), 5 JPEGs deleted\n2026-05-07T13:18:17.848261Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.6MB → 0.7MB (2.5x), 7 JPEGs deleted\n2026-05-07T13:18:38.773800Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:18:53.874192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:19:41.763693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.713749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:19:43.784754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T13:20:42.409231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:42.480276Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.486033Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:20:43.573581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.864962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:03.905431Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.316615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:06.395794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.837125Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:07.906332Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=click)\n2026-05-07T13:23:17.860400Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T13:23:18.919592Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (9.9x), 16 JPEGs deleted\n2026-05-07T13:23:20.708512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.9MB → 1.7MB (3.5x), 27 JPEGs deleted\n2026-05-07T13:23:48.097417Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:21.318858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:36.443434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:39.470559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=424865985217533683, trigger=visual_change)\n2026-05-07T13:24:48.562648Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:24:54.766114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:54.842239Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8231918064033476554, trigger=click)\n2026-05-07T13:24:57.610430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n2026-05-07T13:25:03.662456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8231918064033476554, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T13:25:24.777507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:25:37.791072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:37.836030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:25:51.903705Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:25:51.964830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.504023Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:04.546802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:08.149752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:09.427369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:09.478399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.764739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:13.837860Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:14.447663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:16.419425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:16.496394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.438430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:18.504329Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:26:44.718795Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:50.774132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:26:59.841559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:27:11.369696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-522327318285072363, trigger=click)\n2026-05-07T13:27:18.114133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:28:20.707574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-07T13:28:21.857567Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.3MB (8.1x), 16 JPEGs deleted\n2026-05-07T13:28:23.803176Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.4MB → 2.0MB (2.2x), 21 JPEGs deleted\n2026-05-07T13:28:58.218374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:01.293270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-522327318285072363, trigger=visual_change)\n2026-05-07T13:29:19.485148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:25.485460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=visual_change)\n2026-05-07T13:29:38.489791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:29:38.537267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T13:30:47.550839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:47.640570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.884555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:30:54.956879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.623760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:04.654652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2570001389504003232, trigger=click)\n2026-05-07T13:31:41.897118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:31:43.912833Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:43.954098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:31:50.967778Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:32:27.500018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:32:28.153620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8871609275972961978, trigger=visual_change)\n2026-05-07T13:33:23.810818Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T13:33:24.599747Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.7x), 9 JPEGs deleted\n2026-05-07T13:33:25.612317Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-07T13:33:26.450449Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:29.401760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3492143669303864527, trigger=visual_change)\n2026-05-07T13:33:59.930217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:02.972955Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:06.002973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:19.789254Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:24.213041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:34:28.577724Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:28.641450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=click)\n2026-05-07T13:34:30.299849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4153552929746868993, trigger=visual_change)\n2026-05-07T13:35:19.180106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.233759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:20.283248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.407060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:21.488427Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.110300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:35:22.193553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T13:36:48.478234Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:36:48.525320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.794102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:37:01.878637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:25.619953Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T13:38:26.436748Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.0x), 11 JPEGs deleted\n2026-05-07T13:38:27.574303Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 1.0MB (1.8x), 9 JPEGs deleted\n2026-05-07T13:38:43.844035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:38:43.891356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)\n2026-05-07T13:39:27.023777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-8172588032256589366
|
2716136865745446267
|
click
|
accessibility
|
NULL
|
2026-05-07T09:45:22.811350Z INFO screenpipe_engin 2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
2026-05-07T10:17:13.547514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:17:23.997418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:17:36.067503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=visual_change)
2026-05-07T10:17:48.254094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8224741320031956579, trigger=click)
2026-05-07T10:18:06.328441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:21.374558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:27.400579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8392580966194121284, trigger=visual_change)
2026-05-07T10:18:36.379491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:18:39.375238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7524776963116161484, trigger=visual_change)
2026-05-07T10:19:43.208935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
2026-05-07T10:19:49.257421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840747455939898472, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:21:21.848375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=click)
2026-05-07T10:21:23.439805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=201887528283740068, trigger=visual_change)
2026-05-07T10:21:38.803777Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4689651471004117672, trigger=click)
2026-05-07T10:21:44.054102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 84 eligible frames
2026-05-07T10:21:46.307600Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 5.0MB → 1.3MB (3.8x), 38 JPEGs deleted
2026-05-07T10:21:49.031129Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.2MB → 1.4MB (5.2x), 44 JPEGs deleted
2026-05-07T10:23:02.085605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:23:05.086593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2104275679555505311, trigger=visual_change)
2026-05-07T10:24:05.661776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
2026-05-07T10:24:09.585701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=click)
2026-05-07T10:24:11.714956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=763931354791105339, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:25:31.235235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4393937499657261667, trigger=visual_change)
2026-05-07T10:25:38.986311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2365554338448923185, trigger=click)
2026-05-07T10:26:49.039316Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 88 eligible frames
2026-05-07T10:26:52.006289Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 42 frames, 9.5MB → 4.4MB (2.1x), 42 JPEGs deleted
2026-05-07T10:26:54.644073Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 7.6MB → 1.1MB (7.0x), 44 JPEGs deleted
2026-05-07T10:28:33.499505Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:35.956588Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:36.666492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:36.789359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:39.100987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:40.047061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:40.064268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:42.052599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:44.774285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:44.791022Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:45.378301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:46.470785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:46.575295Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.652750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:47.668490Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:48.439575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:50.165309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:50.177581Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:51.452287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:28:51.994437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:52.053841Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:28:54.432682Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:03.124980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:03.868714Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:05.079320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.543967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:06.576904Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.792645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:08.865500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:20.773748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:21.723479Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:21.752924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:23.883669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1480943928003130782, trigger=visual_change)
2026-05-07T10:29:35.016352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:36.054767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:36.117899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.114508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=visual_change)
2026-05-07T10:29:38.937597Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4111022203962396269, trigger=click)
2026-05-07T10:29:38.987983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4111022203962396269, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:31:28.462010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:28.506716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9014748524946296965, trigger=click)
2026-05-07T10:31:54.652328Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 102 eligible frames
2026-05-07T10:31:57.015395Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 13.6MB → 2.6MB (5.3x), 37 JPEGs deleted
2026-05-07T10:32:00.752190Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 63 frames, 7.5MB → 3.0MB (2.5x), 63 JPEGs deleted
2026-05-07T10:32:26.599963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:32:27.400474Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:34:30.099383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:34:30.729647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:03.954351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:35:13.717941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8871609275972961978, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:37:00.792475Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 104 eligible frames
2026-05-07T10:37:03.726678Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 45 frames, 15.7MB → 2.8MB (5.7x), 45 JPEGs deleted
2026-05-07T10:37:07.426691Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 8.5MB → 3.4MB (2.5x), 57 JPEGs deleted
2026-05-07T10:37:20.569450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.162289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:29.307132Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:30.755107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:32.262354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:32.364050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:45.907491Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=visual_change)
2026-05-07T10:37:47.205630Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2524758617991974503, trigger=click)
2026-05-07T10:37:47.304637Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:41:59.417224Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5950044591583842886, trigger=click)
2026-05-07T10:41:59.477946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5950044591583842886, trigger=click)
2026-05-07T10:42:04.742903Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:04.791839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5999585032610140654, trigger=click)
2026-05-07T10:42:07.459097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-07T10:42:08.925855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.3MB → 2.0MB (2.1x), 20 JPEGs deleted
2026-05-07T10:42:09.013373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:09.056483Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3109201817482414574, trigger=click)
2026-05-07T10:42:10.403020Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 1.2MB (2.2x), 16 JPEGs deleted
2026-05-07T10:42:15.023525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:15.087803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7036607934458099426, trigger=click)
2026-05-07T10:42:55.509669Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2284708141138457574, trigger=visual_change)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:47:10.412520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-07T10:47:12.469581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 8.4MB → 1.8MB (4.7x), 34 JPEGs deleted
2026-05-07T10:47:15.163169Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.2MB → 2.4MB (3.0x), 40 JPEGs deleted
2026-05-07T10:49:59.513306Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5898226934247819222, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:52:15.173889Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-07T10:52:17.082276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 8.4MB → 0.7MB (11.6x), 32 JPEGs deleted
2026-05-07T10:52:19.490930Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.9MB → 2.2MB (2.7x), 39 JPEGs deleted
2026-05-07T10:54:22.187516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:54:28.229775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:10.540942Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:13.602063Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
2026-05-07T10:55:16.605531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1639151917924912395, trigger=visual_change)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:55:24.247307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2524758617991974503, trigger=click)
2026-05-07T10:57:19.473518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:57:20.680885Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.9MB → 0.5MB (5.3x), 11 JPEGs deleted
2026-05-07T10:57:21.976198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 1.3MB (1.9x), 15 JPEGs deleted
2026-05-07T10:58:11.572541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:11.672796Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:12.154759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:13.639499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:15.413079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:15.495531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:16.595925Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=visual_change)
2026-05-07T10:58:21.437769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.085129Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.869865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:32.981197Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2179464293260827512, trigger=click)
2026-05-07T10:58:42.120927Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:42.168157Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1967027037406422417, trigger=click)
2026-05-07T10:58:59.393221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3964650797953228084, trigger=click)
2026-05-07T10:58:59.482526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=click)
2026-05-07T10:59:49.917826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
2026-05-07T11:00:17.089194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3964650797953228084, trigger=visual_change)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T11:02:21.972630Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-07T11:02:22.860530Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.6MB → 0.5MB (4.8x), 10 JPEGs deleted
2026-05-07T11:02:23.655299Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.4MB (4.9x), 10 JPEGs deleted
2026-05-07T11:03:02.204893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:02.270520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.248220Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:05.306387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
2026-05-07T11:03:59.105792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7900633084178088567, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T11:05:34.710050Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:07:23.661054Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 75 eligible frames
2026-05-07T11:07:25.906642Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 10.0MB → 0.4MB (23.0x), 38 JPEGs deleted
2026-05-07T11:07:28.176089Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 35 frames, 6.9MB → 2.5MB (2.8x), 35 JPEGs deleted
2026-05-07T11:08:06.864979Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:15.119215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:08:29.818126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:32.981193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:33.042213Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:50.978274Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.734286Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:08:52.851489Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:07.119123Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:09:37.291815Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:09:40.319359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:14.288318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:14.424670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.847960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:16.940298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T11:10:50.032003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:10:56.222667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:10:56.312244Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:20.348299Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:21.120460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.721850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:23.804892Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.056996Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:29.140586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.305845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:30.383186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.114228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:32.191508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=click)
2026-05-07T11:11:35.851585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3673172198391692637, trigger=visual_change)
2026-05-07T11:11:45.797893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:11:58.899193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:12:02.054717Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.130409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.755693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:02.846886Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:03.619909Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=visual_change)
2026-05-07T11:12:10.642255Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:10.727852Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.690324Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:11.781304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3238466536228167005, trigger=click)
2026-05-07T11:12:21.621763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:25.624917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:28.182732Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames
2026-05-07T11:12:30.153855Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 7.1MB → 0.9MB (8.3x), 32 JPEGs deleted
2026-05-07T11:12:32.796836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 40 frames, 7.6MB → 2.8MB (2.7x), 40 JPEGs deleted
2026-05-07T11:12:40.535068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:40.647364Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.220156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:41.301848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.222251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7933120038421061284, trigger=click)
2026-05-07T11:12:43.266764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7933120038421061284, trigger=click)
2026-05-07T11:13:01.235609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:01.299808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.450693Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:32.586876Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.862308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:13:44.940165Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4952689273601773303, trigger=click)
2026-05-07T11:14:01.162441Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:03.453473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:08.993859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:09.054039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.312363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:12.354292Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.396038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:21.489451Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=click)
2026-05-07T11:14:22.083385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6840767885990663182, trigger=visual_change)
2026-05-07T11:14:36.252205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.015757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:43.664591Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=visual_change)
2026-05-07T11:14:45.857760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:45.904716Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1282942611038083818, trigger=click)
2026-05-07T11:14:47.073442Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1282942611038083818, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T11:16:05.411899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture fo...
|
1905
|
NULL
|
NULL
|
NULL
|
|
544
|
NULL
|
0
|
2026-05-07T07:16:46.855911+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138206855_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
DOCKER2026-05-07110:12:16.55057022026-05-07T10:12: DOCKER2026-05-07110:12:16.55057022026-05-07T10:12:31.745217Z2026-05-07T10:12:34.790862Z2026-05-07110:12:37.78475222026-05-07T10:12:40.806177Z2026-05-07110:12:43.85488122026-05-07T10:12:59.015149Z2026-05-07T10:13:14.166750Z2026-05-07T10:13:17.184510Z2026-05-07T10:13:34.773468Z2026-05-07110:13:44.486450Z2026-05-07T10:13:54.236529Z2026-05-07T10:13:59.559230Z2026-05-07110:14:11.8091682tip: wire screenpipeclaude mcp adrthen askclau2026-05-07T10:15:45.2026-05-07110:15:45.2026-05-07T10:15:58.2026-05-07T10:15:58.2026-05-07T10:15:58.2026-05-07T10:16:052026-05-07T10:16:06.212026-05-07T10:16:10.088825Z2026-05-07T10:16:11.585397Z2026-05-07T10:16:11.626664Z2026-05-07T10:16:14.079057Z2026-05-07110:16:16.219212Z2026-05-07T10:16:16.238237Z2026-05-07T10:16:17.211409Z2026-05-07T10:16:17.247202Z2026-05-07T10:16:37.973759Z2026-05-07T10:16:38.014645Z2026-05-07T10:16:38.719453Z2026-05-07T10:16:38.757458Z2026-05-07T10:16:39.323203Z2026-05-07T10:16:39.361472Z2026-05-07110:16:40.850433Z2026-05-07T10:16:42.489832Z2026-05-07T10:16:44.044480Z2026-05-07T10:16:44.383786ZiTerm2ShellEditViewSessionScriptsProfilesWindowHelpSupport Daily • in 4 h 44 m100% C8Thu 7 May 10:16:46ffmpegO ₴1DEV (-zsh)• ₴2APP (-zsh)-zsh₴4ffmpegINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capturefor monitor 1 (hash=9173838423795606666,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1(hash=1669118135250037105,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:skippingcapture formonitor 1INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capturefor monitor 1Chash=1669118135250037105,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentskipping capture(hash=1669118135250037105,dedup:for monitortrigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingforChash=1669118135250037105,capturemonitor 1 (hash=1669118135250037105,trigger=visual_change)trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=1669118135250037105,trigger=visual_change)INFOINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 1 (hash=1669118135250037105,screenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor1 (hash=1669118135250037105,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:skippingcapture fortrigger=visual_change)monitor 1INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capturefor monitorChash=-6229566017341650404,trigger=click)1 (hash=-6229566017341650404,trigger=visual_change)INFOscreenpipe_engine::event__driven_capture: content dedup:skippingcapturefor monitor 1 Chash=-7077166956358270957,trigger=click)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapture formonitor 1 (hash=-3980541844315414876,INFOscreenpipe_engine::event_driven_capture:content dedup:trigger=visual_change)skippingcapture for monitor 1 (hash=6523625761174407917, trigger=click)INFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOlick)Lick3ne1al_change)Term-ick)engine::event_driven_capture:contentdedup:skippingcaptureformonitor 2 (hash=-6145754442538527174, trigger=click)engine: :event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=-6145754442538527174, trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcaptureformonitor 2 (hash=-6145754442538527174, trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 2(hash=806643008695069553, trigger=visual_change)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 2 (hash=806643008695069553,trigger=click)screenpipe_engine:: event_driven_capture:contentdedup:skippingcaptureforscreenpipe_engine:: event_driven_capture:contentdedup:skippingcaptureformonitor 1 (hash=806643008695069553,trigger=click)monitor 2 (hash=806643008695069553,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=806643008695069553,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 2 (hash=-8875948178524934281, trigger=click)screenpipe_engine::event_driven_capture: contentdedup:skippingcaptureformonitor 1 (hash=-8875948178524934281,trigger=click)screenpipe_engine::event_driven_capture: contentdedup:skippingcaptureformonitor 1(hash=-8875948178524934281,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor2screenpipe_engine:: event.driven_capture: contentdedup:skippingcaptureforChash=-8875948178524934281,trigger=click)monitor 2 (hash=-8875948178524934281,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=-8875948178524934281, trigger=click)screenpipe_engine::snapshot_compaction:snapshotcompaction:found 50eligibleframesscreenpipe_engine::snapshot_compaction:snapshotcompaction:25 frames,4.5MB→ 1.4MB (3.2x),25 JPEGSdeletedscreenpipe_engine::snapshot_compaction:snapshotcompaction:23 frames,4.2MB1.1MB (3.7x),23 JPEGSdeletedscreenpipe_engine::event_driven_capture:contentdedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)...
|
NULL
|
4337338142933187193
|
NULL
|
visual_change
|
ocr
|
NULL
|
DOCKER2026-05-07110:12:16.55057022026-05-07T10:12: DOCKER2026-05-07110:12:16.55057022026-05-07T10:12:31.745217Z2026-05-07T10:12:34.790862Z2026-05-07110:12:37.78475222026-05-07T10:12:40.806177Z2026-05-07110:12:43.85488122026-05-07T10:12:59.015149Z2026-05-07T10:13:14.166750Z2026-05-07T10:13:17.184510Z2026-05-07T10:13:34.773468Z2026-05-07110:13:44.486450Z2026-05-07T10:13:54.236529Z2026-05-07T10:13:59.559230Z2026-05-07110:14:11.8091682tip: wire screenpipeclaude mcp adrthen askclau2026-05-07T10:15:45.2026-05-07110:15:45.2026-05-07T10:15:58.2026-05-07T10:15:58.2026-05-07T10:15:58.2026-05-07T10:16:052026-05-07T10:16:06.212026-05-07T10:16:10.088825Z2026-05-07T10:16:11.585397Z2026-05-07T10:16:11.626664Z2026-05-07T10:16:14.079057Z2026-05-07110:16:16.219212Z2026-05-07T10:16:16.238237Z2026-05-07T10:16:17.211409Z2026-05-07T10:16:17.247202Z2026-05-07T10:16:37.973759Z2026-05-07T10:16:38.014645Z2026-05-07T10:16:38.719453Z2026-05-07T10:16:38.757458Z2026-05-07T10:16:39.323203Z2026-05-07T10:16:39.361472Z2026-05-07110:16:40.850433Z2026-05-07T10:16:42.489832Z2026-05-07T10:16:44.044480Z2026-05-07T10:16:44.383786ZiTerm2ShellEditViewSessionScriptsProfilesWindowHelpSupport Daily • in 4 h 44 m100% C8Thu 7 May 10:16:46ffmpegO ₴1DEV (-zsh)• ₴2APP (-zsh)-zsh₴4ffmpegINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capturefor monitor 1 (hash=9173838423795606666,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1(hash=1669118135250037105,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:skippingcapture formonitor 1INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capturefor monitor 1Chash=1669118135250037105,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentskipping capture(hash=1669118135250037105,dedup:for monitortrigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingforChash=1669118135250037105,capturemonitor 1 (hash=1669118135250037105,trigger=visual_change)trigger=visual_change)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=1669118135250037105,trigger=visual_change)INFOINFOscreenpipe_engine::event_driven_capture:contentdedup:skipping capture for monitor 1 (hash=1669118135250037105,screenpipe_engine::event_driven_capture: content dedup:skipping capture for monitor1 (hash=1669118135250037105,trigger=visual_change)INFOscreenpipe_engine::event_driven_capture: contentdedup:skippingcapture fortrigger=visual_change)monitor 1INFOscreenpipe_engine::event_driven_capture: contentdedup:skipping capturefor monitorChash=-6229566017341650404,trigger=click)1 (hash=-6229566017341650404,trigger=visual_change)INFOscreenpipe_engine::event__driven_capture: content dedup:skippingcapturefor monitor 1 Chash=-7077166956358270957,trigger=click)INFOscreenpipe_engine::event_driven_capture:contentdedup:skippingcapture formonitor 1 (hash=-3980541844315414876,INFOscreenpipe_engine::event_driven_capture:content dedup:trigger=visual_change)skippingcapture for monitor 1 (hash=6523625761174407917, trigger=click)INFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOINFOlick)Lick3ne1al_change)Term-ick)engine::event_driven_capture:contentdedup:skippingcaptureformonitor 2 (hash=-6145754442538527174, trigger=click)engine: :event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=-6145754442538527174, trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcaptureformonitor 2 (hash=-6145754442538527174, trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 2(hash=806643008695069553, trigger=visual_change)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 2 (hash=806643008695069553,trigger=click)screenpipe_engine:: event_driven_capture:contentdedup:skippingcaptureforscreenpipe_engine:: event_driven_capture:contentdedup:skippingcaptureformonitor 1 (hash=806643008695069553,trigger=click)monitor 2 (hash=806643008695069553,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=806643008695069553,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 2 (hash=-8875948178524934281, trigger=click)screenpipe_engine::event_driven_capture: contentdedup:skippingcaptureformonitor 1 (hash=-8875948178524934281,trigger=click)screenpipe_engine::event_driven_capture: contentdedup:skippingcaptureformonitor 1(hash=-8875948178524934281,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor2screenpipe_engine:: event.driven_capture: contentdedup:skippingcaptureforChash=-8875948178524934281,trigger=click)monitor 2 (hash=-8875948178524934281,trigger=click)screenpipe_engine::event_driven_capture:contentdedup:skippingcapturefor monitor 1 (hash=-8875948178524934281, trigger=click)screenpipe_engine::snapshot_compaction:snapshotcompaction:found 50eligibleframesscreenpipe_engine::snapshot_compaction:snapshotcompaction:25 frames,4.5MB→ 1.4MB (3.2x),25 JPEGSdeletedscreenpipe_engine::snapshot_compaction:snapshotcompaction:23 frames,4.2MB1.1MB (3.7x),23 JPEGSdeletedscreenpipe_engine::event_driven_capture:contentdedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)...
|
541
|
NULL
|
NULL
|
NULL
|
|
543
|
NULL
|
0
|
2026-05-07T07:16:47.360297+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138207360_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)\n2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)\n2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)\n2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)\n2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)\n2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)\n2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)\n2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)\n2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)\n2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted\n2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted\n2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
5585856934177328954
|
3292896620250240369
|
visual_change
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T10:15:45.403085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:45.438150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6029182552546457581, trigger=click)
2026-05-07T10:15:58.662028Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=1)
2026-05-07T10:15:58.663307Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=1)
2026-05-07T10:15:58.663499Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None
2026-05-07T10:16:05.043304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=visual_change)
2026-05-07T10:16:06.212558Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=312614534752492596, trigger=click)
2026-05-07T10:16:10.088825Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.585397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:11.626664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6145754442538527174, trigger=click)
2026-05-07T10:16:14.079057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=visual_change)
2026-05-07T10:16:16.219212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:16.238237Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.211409Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:17.247202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=806643008695069553, trigger=click)
2026-05-07T10:16:37.973759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.014645Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.719453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:38.757458Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.323203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:39.361472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8875948178524934281, trigger=click)
2026-05-07T10:16:40.850433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames
2026-05-07T10:16:42.489832Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 1.4MB (3.2x), 25 JPEGs deleted
2026-05-07T10:16:44.044480Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.2MB → 1.1MB (3.7x), 23 JPEGs deleted
2026-05-07T10:16:44.383786Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8875948178524934281, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
542
|
NULL
|
NULL
|
NULL
|
|
508
|
21
|
26
|
2026-05-07T07:15:14.983133+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138114983_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
8663384110706991852
|
3293112124529284469
|
idle
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
504
|
NULL
|
NULL
|
NULL
|
|
507
|
22
|
22
|
2026-05-07T07:15:12.069039+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138112069_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
8663384110706991852
|
3293112124529284469
|
idle
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
505
|
NULL
|
NULL
|
NULL
|
|
506
|
21
|
25
|
2026-05-07T07:14:44.832304+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138084832_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
8663384110706991852
|
3293112124529284469
|
idle
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
504
|
NULL
|
NULL
|
NULL
|
|
505
|
22
|
21
|
2026-05-07T07:14:41.906033+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138081906_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
8663384110706991852
|
3293112124529284469
|
idle
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
504
|
21
|
24
|
2026-05-07T07:14:14.689889+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138054689_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)\n2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
8663384110706991852
|
3293112124529284469
|
visual_change
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
2026-05-07T10:14:11.809168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6523625761174407917, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
503
|
22
|
20
|
2026-05-07T07:14:11.706516+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138051706_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
6523625761174407917
|
3293112124529284469
|
click
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
500
|
NULL
|
NULL
|
NULL
|
|
502
|
21
|
23
|
2026-05-07T07:14:02.546217+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138042546_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)\n2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
6523625761174407917
|
3293112124529284469
|
visual_change
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
2026-05-07T10:13:59.559230Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3980541844315414876, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
501
|
NULL
|
NULL
|
NULL
|
|
501
|
21
|
22
|
2026-05-07T07:13:56.489418+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138036489_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-3980541844315414876
|
3292549174575863157
|
visual_change
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
500
|
22
|
19
|
2026-05-07T07:13:54.226412+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138034226_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)\n2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-3980541844315414876
|
3292549174575863157
|
click
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
2026-05-07T10:13:54.236529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7077166956358270957, trigger=click)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
499
|
21
|
21
|
2026-05-07T07:13:53.468587+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778138033468_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)\n2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms\n2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)\n2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)\n2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames\n2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted\n2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames\n2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted\n2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)\n2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames\n2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted\n2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted\n2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted\n2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)\n2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)\n2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)\n2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)\n2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)\n2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)\n2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)\n2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)\n2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted\n2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)\n2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)\n2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)\n2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)\n2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-7077166956358270957
|
3292549174575863157
|
visual_change
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
2026-05-07T09:45:23.728324Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=156, dur=87ms
2026-05-07T09:45:25.114503Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: "....", help: "https://www.osstatus.com?search=-25212" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app
2026-05-07T09:45:29.149038Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7681127700032315998, trigger=visual_change)
2026-05-07T09:45:48.802125Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)
2026-05-07T09:45:53.994026Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)
2026-05-07T09:45:53.994983Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=1, app=Firefox, title=None)
2026-05-07T09:45:53.995269Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(1), app=Some("Firefox"), source=Some("ui_scan")
2026-05-07T09:46:22.681313Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 77 eligible frames
2026-05-07T09:46:24.975724Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 38 frames, 7.6MB → 1.8MB (4.2x), 38 JPEGs deleted
2026-05-07T09:46:27.284414Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 5.7MB → 0.4MB (14.3x), 37 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T09:51:27.298006Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-07T09:56:27.307108Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 45 eligible frames
2026-05-07T09:56:29.766853Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.6MB → 2.5MB (1.8x), 29 JPEGs deleted
2026-05-07T09:56:31.182378Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.5MB → 1.1MB (2.4x), 16 JPEGs deleted
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-07T10:00:50.039083Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4913720669938969944, trigger=visual_change)
2026-05-07T10:01:31.184069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 70 eligible frames
2026-05-07T10:01:33.701926Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.4MB → 2.7MB (2.4x), 37 JPEGs deleted
2026-05-07T10:01:35.921087Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 5.6MB → 1.7MB (3.3x), 31 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-07T10:06:35.921469Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-07T10:06:37.286011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.2MB → 1.1MB (3.0x), 18 JPEGs deleted
2026-05-07T10:06:38.611334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.2MB → 0.7MB (4.3x), 17 JPEGs deleted
2026-05-07T10:07:10.923890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-363038137104660743, trigger=click)
2026-05-07T10:07:54.763156Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=click)
2026-05-07T10:07:58.866469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7750749190140780004, trigger=click)
2026-05-07T10:08:03.510124Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4602046684169633189, trigger=visual_change)
2026-05-07T10:08:39.088273Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3643569030250279342, trigger=visual_change)
2026-05-07T10:09:18.346872Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6569246041316117301, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-07T10:10:36.954420Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4721988080886038618, trigger=visual_change)
2026-05-07T10:10:54.330626Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=1, grace=300s)
2026-05-07T10:11:12.369084Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8225140425134796296, trigger=visual_change)
2026-05-07T10:11:38.678230Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-07T10:11:40.024314Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.8MB → 1.0MB (2.9x), 16 JPEGs deleted
2026-05-07T10:11:40.843106Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted
2026-05-07T10:12:12.538283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7652725149678140352, trigger=click)
2026-05-07T10:12:16.550570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9173838423795606666, trigger=visual_change)
2026-05-07T10:12:31.745217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:34.790862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:37.784752Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:40.806177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:43.854881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:12:59.015149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:14.166750Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:17.184510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1669118135250037105, trigger=visual_change)
2026-05-07T10:13:34.773468Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=click)
2026-05-07T10:13:44.486450Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6229566017341650404, trigger=visual_change)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
498
|
NULL
|
NULL
|
NULL
|
|
156
|
10
|
0
|
2026-05-07T06:45:23.333997+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778136323333_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)","depth":4,"bounds":{"left":0.27027926,"top":0.10055866,"width":0.4800532,"height":0.89944136},"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)\n2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms\n2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.36469415,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.36668882,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.45910904,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.46110374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.55352396,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5555186,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.64793885,"top":1.0,"width":0.0944149,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6499335,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
6119614853950951544
|
7288888280825394241
|
manual
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
2026-05-07T09:45:23.576837Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=155, dur=39ms
2026-05-07T09:45:23.594869Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 1 excluded)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
155
|
9
|
0
|
2026-05-07T06:45:23.272636+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-07/1778 /Users/lukas/.screenpipe/data/data/2026-05-07/1778136323272_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)","depth":4,"on_screen":true,"value":"Last login: Thu May 7 09:44:56 on ttys009\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\n\nPoetry could not find a pyproject.toml file in /Users/lukas or its parents\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture\n2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9\n2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)\n2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC\n2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.19722222,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.2013889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.39444444,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.3986111,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.59166664,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.59583336,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.7888889,"top":0.05888889,"width":0.19722222,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.79305553,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
3399700830269481284
|
7000657913263619393
|
manual
|
accessibility
|
NULL
|
Last login: Thu May 7 09:44:56 on ttys009
Poetry Last login: Thu May 7 09:44:56 on ttys009
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
Poetry could not find a pyproject.toml file in /Users/lukas or its parents
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-07T09:45:22.019771Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store
checking permissions...
screen recording: ok
accessibility: ok
2026-05-07T09:45:22.092624Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6
2026-05-07T09:45:22.622934Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor
2026-05-07T09:45:22.624626Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)
2026-05-07T09:45:22.625092Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)
2026-05-07T09:45:22.646090Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true
2026-05-07T09:45:22.646159Z INFO screenpipe: meeting detector enabled — independent of transcription mode
2026-05-07T09:45:22.646404Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)
2026-05-07T09:45:22.646469Z INFO screenpipe: API server listening on [IP_ADDRESS]:3030 (localhost only)
2026-05-07T09:45:22.646500Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key
2026-05-07T09:45:22.646361Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)
2026-05-07T09:45:22.646531Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager
2026-05-07T09:45:22.649692Z INFO screenpipe_core::pipes: loaded pipe: day-recap
2026-05-07T09:45:22.649928Z INFO screenpipe_core::pipes: loaded pipe: standup-update
2026-05-07T09:45:22.650337Z INFO screenpipe_core::pipes: loaded pipe: ai-habits
2026-05-07T09:45:22.650421Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown
2026-05-07T09:45:22.650497Z INFO screenpipe_core::pipes: loaded pipe: video-export
2026-05-07T09:45:22.650578Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary
2026-05-07T09:45:22.650600Z INFO screenpipe_core::pipes: loaded 6 pipes from "/Users/lukas/.screenpipe/pipes"
_
__________________ ___ ____ ____ (_____ ___
/ ___/ ___/ ___/ _ \/ _ \/ __ \ / __ \/ / __ \/ _ \
(__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/
/____/\___/_/ \___/\___/_/ /_/ / .___/_/ .___/\___/
/_/ /_/
power AI by everything you've seen, said or heard
open source | runs locally | developer friendly
┌────────────────────────┬────────────────────────────────────┐
│ setting │ value │
├────────────────────────┼────────────────────────────────────┤
│ audio chunk duration │ 30 seconds │
│ port │ 3030 │
│ audio disabled │ true │
│ vision disabled │ false │
│ pause on DRM content │ false │
│ audio engine │ Parakeet │
│ vad engine │ Silero │
│ data directory │ /Users/lukas/.screenpipe │
│ debug mode │ false │
│ telemetry │ true │
│ use pii removal │ true │
│ use all monitors │ true │
│ ignored windows │ ["Boosteroid"] │
│ included windows │ [] │
│ cloud sync │ disabled │
│ auto-destruct pid │ 0 │
│ deepgram key │ not set │
│ api auth │ enabled │
│ encrypt secrets │ disabled │
│ retention days │ 14 │
│ retention mode │ media-only (keep transcripts) │
├────────────────────────┼────────────────────────────────────┤
│ languages │ │
│ │ all languages │
├────────────────────────┼────────────────────────────────────┤
│ monitors │ │
2026-05-07T09:45:22.652623Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)
│ │ id: 1 │
│ │ id: 2 │
├────────────────────────┼────────────────────────────────────┤
│ audio devices │ │
│ │ disabled │
└────────────────────────┴────────────────────────────────────┘
you are using local processing. all your data stays on your computer.
warning: telemetry is enabled. only error-level data will be sent.
to disable, use the --disable-telemetry flag.
check latest changes here: https://github.com/screenpipe/screenpipe/releases
2026-05-07T09:45:22.653069Z INFO screenpipe: starting UI event capture
2026-05-07T09:45:22.657316Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh
2026-05-07T09:45:22.658196Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))
2026-05-07T09:45:22.668066Z INFO screenpipe_engine::ui_recorder: Starting UI event capture
2026-05-07T09:45:22.684704Z INFO screenpipe_engine::ui_recorder: UI recording session started: fdb3b7a3-88d3-4983-9faf-3a493cf2f0d9
2026-05-07T09:45:22.684797Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)
2026-05-07T09:45:22.684847Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-06 06:45:22.684845 UTC to 2026-05-07 06:45:22.684845 UTC)
2026-05-07T09:45:22.685646Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)
2026-05-07T09:45:22.695659Z INFO screenpipe_engine::server: Server listening on [IP_ADDRESS]:3030
2026-05-07T09:45:22.708586Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030
2026-05-07T09:45:22.740589Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 154 frame entries, coverage from 2026-05-06 06:45:22.684845 UTC
2026-05-07T09:45:22.770981Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)
2026-05-07T09:45:22.771008Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.771054Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)
2026-05-07T09:45:22.811296Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)
2026-05-07T09:45:22.811328Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811340Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)
2026-05-07T09:45:22.811350Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)
2026-05-07T09:45:22.811366Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)
2026-05-07T09:45:23.497850Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 1 excluded)
DOCKER
Close Tab
DEV (-zsh)
Close Tab
APP (-zsh)
Close Tab
-zsh
Close Tab
screenpipe"
Close Tab
⌥⌘1
screenpipe"...
|
NULL
|
NULL
|
NULL
|
NULL
|
|
11287
|
511
|
4
|
2026-05-08T19:00:20.200391+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-08/1778 /Users/lukas/.screenpipe/data/data/2026-05-08/1778266820200_m1.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_1
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-08T14:49:49.609203Z INFO screenpipe_engin 2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)
2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted
2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted
2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)
2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)
2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames
2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted
2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted
2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)
2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames
2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted
2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted
2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)
2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted
2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted
2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames
2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted
2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted
2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted
2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted
2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames
2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted
2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted
2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted
2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted
2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames
2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted
2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames
2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted
2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted
2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted
2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)
2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted
2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted
2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted
2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted
2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)
2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)
2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted
2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted
2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted
2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted
2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted
2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)
2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)
2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames
2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted
2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted
2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted
2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted
2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)
2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted
2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted
2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames
2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted
2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted
2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)
2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)
2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)
2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)
2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted
2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted
2026-05-08T16:38:05.259643Z INFO screenpipe_...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)\n2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted\n2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)\n2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)\n2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted\n2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted\n2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)\n2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted\n2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted\n2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)\n2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames\n2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted\n2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted\n2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames\n2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted\n2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted\n2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted\n2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted\n2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted\n2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted\n2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted\n2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted\n2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted\n2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted\n2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted\n2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)\n2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted\n2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted\n2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted\n2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted\n2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)\n2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)\n2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted\n2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted\n2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted\n2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted\n2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted\n2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)\n2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)\n2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted\n2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted\n2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted\n2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted\n2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)\n2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted\n2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted\n2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted\n2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted\n2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)\n2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)\n2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted\n2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted\n2026-05-08T16:38:05.259643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:39:12.909832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4321081535914644542, trigger=click)\n2026-05-08T16:40:25.623018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:26.162271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:34.047657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:41:02.718859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:03.098668Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:16.889941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:20.751594Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:21.369201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:23.458753Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:25.774982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:26.132226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:59.022538Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:42:41.097366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:42:42.261030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 31 eligible frames\n2026-05-08T16:42:44.064372Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.5x), 13 JPEGs deleted\n2026-05-08T16:42:46.662334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.5MB → 1.5MB (2.3x), 16 JPEGs deleted\n2026-05-08T16:42:47.389518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:48.716698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:49.102268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:06.793592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:31.893014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:32.345271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.581195Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.886933Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.544984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.925140Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:44:38.882726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:44:48.889640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:45:05.617375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.378021Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.769482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:42.323256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:43.644103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:45:47.974160Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:48.412303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:11.770600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:17.454947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:40.347527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:44.061494Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:35.490643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:47.088520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-08T16:47:48.755861Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.7x), 26 JPEGs deleted\n2026-05-08T16:47:52.724104Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 6.4MB → 2.7MB (2.4x), 31 JPEGs deleted\n2026-05-08T16:48:22.828507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:48:23.287880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:52:52.850297Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-08T16:52:54.488448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (13.0x), 20 JPEGs deleted\n2026-05-08T16:52:59.167917Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 6.0MB → 2.1MB (2.9x), 28 JPEGs deleted\n2026-05-08T16:52:59.739196Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2681294723136147157, trigger=visual_change)\n2026-05-08T16:53:46.074968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:53:50.568386Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:51.098515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:52.118978Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:54:06.885143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:55:53.707471Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:04.273696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:06.475248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:20.948235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:57:59.235636Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:58:00.576102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.5MB → 0.3MB (13.7x), 21 JPEGs deleted\n2026-05-08T16:58:02.677205Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.1MB → 1.8MB (2.8x), 24 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:03:02.727495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-08T17:03:04.155124Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.7MB → 1.0MB (3.8x), 17 JPEGs deleted\n2026-05-08T17:03:06.370939Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.9MB → 1.1MB (2.7x), 15 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:08:07.329819Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T17:08:08.613840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.2x), 11 JPEGs deleted\n2026-05-08T17:08:10.226518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.9MB (2.4x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:13:11.065153Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T17:13:12.228821Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.8x), 11 JPEGs deleted\n2026-05-08T17:13:13.499237Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.4MB → 0.5MB (4.9x), 12 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:18:13.581768Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T17:18:14.809894Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.5MB (4.1x), 10 JPEGs deleted\n2026-05-08T17:18:17.087929Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.4MB (4.1x), 9 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:23:17.603142Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T17:23:20.580519Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 3.9MB → 2.4MB (1.6x), 32 JPEGs deleted\n2026-05-08T17:23:22.677783Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.3MB → 1.4MB (3.6x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:27:10.846803Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T17:27:33.963818Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T17:27:54.139850Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T17:28:23.593501Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 27 eligible frames\n2026-05-08T17:28:24.676398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 1.9MB → 0.8MB (2.3x), 14 JPEGs deleted\n2026-05-08T17:28:25.859865Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.7MB (3.1x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:33:25.986558Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T17:33:26.789183Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.2x), 9 JPEGs deleted\n2026-05-08T17:33:27.563285Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.3MB (5.6x), 9 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:38:28.182574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 16 eligible frames\n2026-05-08T17:38:28.886589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.2MB → 0.3MB (4.1x), 7 JPEGs deleted\n2026-05-08T17:38:29.577841Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.4MB → 0.3MB (4.4x), 7 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:43:29.648932Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:04:49.785955Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:04:49.839982Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-08T20:04:53.759343Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:04:55.111393Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:07:00.813313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T20:10:42.618029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3904702670430433497, trigger=visual_change)\n2026-05-08T20:10:45.123463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4711515230144858250, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:11:30.713728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9106810594602201296, trigger=visual_change)\n2026-05-08T20:14:16.217389Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:16.548216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:29.637817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:29.879880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:31.819509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:32.038351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:15:02.831133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:03.062493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:33.901301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1011947311216729661, trigger=visual_change)\n2026-05-08T20:15:43.576201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:15:46.704845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:06.257275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:06.505947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:15.418552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n2026-05-08T20:16:15.861207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:18.366895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2917246102619125165, trigger=visual_change)\n2026-05-08T20:16:40.062731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5807882321273953520, trigger=visual_change)\n2026-05-08T20:16:52.126194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:16:52.345105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:17:05.916922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:06.154673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:40.355758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:18:35.739479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-08T20:18:36.903071Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.4MB → 0.8MB (2.9x), 15 JPEGs deleted\n2026-05-08T20:18:38.091360Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.5MB → 1.0MB (2.5x), 14 JPEGs deleted\n2026-05-08T20:19:13.919404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=visual_change)\n2026-05-08T20:19:14.588314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:14.811065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:55.465907Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:57.976879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:58.210732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.708671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.925638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.677363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.905411Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:02.835482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:03.061655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:04.804572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:05.024363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:06.033713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:09.059128Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:12.226392Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:45.726452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:20:45.969849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:21:24.493370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7580227543850059871, trigger=visual_change)\n2026-05-08T20:23:38.466934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-08T20:23:39.547544Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (6.8x), 17 JPEGs deleted\n2026-05-08T20:23:41.531398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.1MB → 1.1MB (2.7x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:28:18.706090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4774948292970121772, trigger=click)\n2026-05-08T20:28:41.580799Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 108 eligible frames\n2026-05-08T20:28:43.831390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-894876205704438670, trigger=visual_change)\n2026-05-08T20:28:44.969294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 8.2MB → 0.5MB (17.6x), 49 JPEGs deleted\n2026-05-08T20:28:49.007095Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 6.7MB → 1.4MB (4.6x), 57 JPEGs deleted\n2026-05-08T20:30:21.343664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n2026-05-08T20:30:27.604106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:31:45.513832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=visual_change)\n2026-05-08T20:31:48.011569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:31:48.249500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:33:49.342449Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 91 eligible frames\n2026-05-08T20:33:51.827637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.0MB → 0.7MB (8.1x), 43 JPEGs deleted\n2026-05-08T20:33:55.054987Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 46 frames, 4.6MB → 1.6MB (2.9x), 46 JPEGs deleted\n2026-05-08T20:35:19.676013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1827677619597110143, trigger=visual_change)\n2026-05-08T20:35:38.608166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7690343374532335752, trigger=visual_change)\n2026-05-08T20:35:42.780526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2703318784337709404, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:35:56.355781Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7823468571821822861, trigger=visual_change)\n2026-05-08T20:36:22.375674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8657760664432582001, trigger=visual_change)\n2026-05-08T20:36:40.473370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7877441979520438018, trigger=visual_change)\n2026-05-08T20:38:33.293511Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-376083047421699892, trigger=click)\n2026-05-08T20:38:55.069048Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-08T20:38:57.007959Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.1MB → 0.6MB (7.0x), 29 JPEGs deleted\n2026-05-08T20:38:59.880873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 4.2MB → 1.1MB (3.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:43:59.926707Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 69 eligible frames\n2026-05-08T20:44:02.056320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 4.5MB → 0.8MB (5.9x), 30 JPEGs deleted\n2026-05-08T20:44:04.341761Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 4.5MB → 2.0MB (2.3x), 37 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:49:04.409956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 126 eligible frames\n2026-05-08T20:49:08.673448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 59 frames, 8.8MB → 0.6MB (15.1x), 59 JPEGs deleted\n2026-05-08T20:49:12.421439Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 65 frames, 10.1MB → 3.7MB (2.7x), 65 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:52:43.279175Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T20:53:02.542074Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T20:53:22.223671Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T20:53:43.376875Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:53:44.320342Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:44.702482Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-08T20:53:44.766868Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:53:44.769563Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-08T20:53:45.630546Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:50.481960Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:54:12.517407Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T20:54:13.846591Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.2MB (14.2x), 22 JPEGs deleted\n2026-05-08T20:54:15.514639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.5MB → 1.2MB (2.9x), 24 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:57:17.294028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7444095039019316179, trigger=visual_change)\n2026-05-08T20:59:15.557119Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T20:59:16.329704Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T20:59:17.043864Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (7.1x), 10 JPEGs deleted\n2026-05-08T20:59:47.460912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3104042594135371283, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:00:57.894791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2951187366245898742, trigger=visual_change)\n2026-05-08T21:01:06.613235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:01:09.013878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:02:24.900144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4793981130858720403, trigger=visual_change)\n2026-05-08T21:03:00.834443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4979005722608610110, trigger=visual_change)\n2026-05-08T21:03:15.059207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:20.421861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:21.573271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.482847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.732285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:25.504075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:28.620241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:33.210921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3561975034088737886, trigger=click)\n2026-05-08T21:03:40.672959Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=visual_change)\n2026-05-08T21:03:43.051397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=click)\n2026-05-08T21:04:17.068960Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T21:04:17.779581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:04:18.546629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.3MB (4.6x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:05:58.181337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:05:58.465844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.754242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.989794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.164993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.428989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:17.267949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4552264416724558099, trigger=visual_change)\n2026-05-08T21:06:23.722803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7038235136836995999, trigger=visual_change)\n2026-05-08T21:06:24.425270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7038235136836995999, trigger=click)\n2026-05-08T21:06:27.875456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8000279009348332551, trigger=visual_change)\n2026-05-08T21:06:36.770626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:37.052773Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=visual_change)\n2026-05-08T21:06:40.678625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1553333732640047765, trigger=click)\n2026-05-08T21:06:42.970803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1553333732640047765, trigger=visual_change)\n2026-05-08T21:06:50.410701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:50.698201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:51.834995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:52.089131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:55.503231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:06:55.767512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:07:06.797250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:07.080966Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:26.094192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:07:26.358484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:09:18.831192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T21:09:19.849460Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.3x), 16 JPEGs deleted\n2026-05-08T21:09:21.257275Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 2.8MB → 1.1MB (2.5x), 20 JPEGs deleted\n2026-05-08T21:09:24.007459Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8187633539590837799, trigger=click)\n2026-05-08T21:09:37.247842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:38.125950Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.514304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.780918Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:23.638217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:32.249339Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:34.660845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6810519470838372495, trigger=click)\n2026-05-08T21:10:40.455969Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8296869480898852743, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:11:14.128113Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3195497519825248998, trigger=visual_change)\n2026-05-08T21:12:00.471616Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-346550604289919418, trigger=click)\n2026-05-08T21:13:02.802932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:03.331855Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.529228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.911728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:06.816662Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:07.086799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:14:21.327919Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 63 eligible frames\n2026-05-08T21:14:23.102986Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.3MB (12.6x), 22 JPEGs deleted\n2026-05-08T21:14:26.165750Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.6MB → 1.7MB (3.4x), 39 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:17:46.195259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:46.465187Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:51.973404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2738389652473725666, trigger=visual_change)\n2026-05-08T21:18:58.400941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2578505850628214831, trigger=visual_change)\n2026-05-08T21:19:06.416424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:06.685020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:12.267096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:12.544152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:15.017582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=visual_change)\n2026-05-08T21:19:15.591731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:15.868418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:19.875345Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5326607878323909585, trigger=click)\n2026-05-08T21:19:26.216722Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 89 eligible frames\n2026-05-08T21:19:28.902767Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 6.7MB → 0.2MB (27.6x), 44 JPEGs deleted\n2026-05-08T21:19:31.813806Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.8MB → 1.0MB (6.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:24:31.867377Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T21:24:34.120438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 4.9MB → 0.2MB (20.4x), 32 JPEGs deleted\n2026-05-08T21:24:35.774008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 3.4MB → 1.1MB (3.1x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:29:36.175579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 85 eligible frames\n2026-05-08T21:29:38.440399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.0MB → 0.5MB (13.2x), 39 JPEGs deleted\n2026-05-08T21:29:41.331730Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 5.2MB → 1.1MB (4.7x), 44 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:31:54.638020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:31:54.936743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:34:41.431775Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:34:42.151157Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:34:42.946170Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.4MB (3.7x), 10 JPEGs deleted\n2026-05-08T21:35:37.068968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.020865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.339742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:36:06.995315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:36:46.380456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:32.308787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:38.397888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:41.424353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:38:08.557506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:38:57.045355Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=visual_change)\n2026-05-08T21:39:42.978091Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:39:43.722518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:39:44.469363Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.2MB (5.2x), 10 JPEGs deleted\n2026-05-08T21:40:29.390307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:31.641192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:33.573652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:44:44.495988Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T21:44:45.246239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.2MB (7.3x), 11 JPEGs deleted\n2026-05-08T21:44:46.141107Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.7MB → 0.4MB (4.0x), 12 JPEGs deleted\n2026-05-08T21:45:20.057437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:21.321027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:27.255754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:28.774563Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:29.099275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:49:46.184240Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T21:49:46.901735Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:49:47.790415Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.6MB (2.5x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:52:33.716988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2581436281688479551, trigger=visual_change)\n2026-05-08T21:54:47.803942Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:54:48.610000Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.9MB → 0.2MB (8.0x), 12 JPEGs deleted\n2026-05-08T21:54:49.563965Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.8MB (2.3x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:59:49.577066Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:59:50.659239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:59:51.627801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.4MB (6.0x), 13 JPEGs deleted\n2026-05-08T21:59:53.243879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:53.551127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:54.536127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:57.147010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:57.467025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.013866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.417155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:59.342346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:00.358167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.462210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.847552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:05.867385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:06.215294Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:09.191593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=76416274129722, trigger=click)\n2026-05-08T22:00:13.029530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:13.348919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.688528Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.999189Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)","depth":4,"on_screen":true,"value":"2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)\n2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted\n2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)\n2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)\n2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted\n2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted\n2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)\n2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted\n2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted\n2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)\n2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames\n2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted\n2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted\n2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames\n2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted\n2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted\n2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted\n2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted\n2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted\n2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted\n2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted\n2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted\n2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted\n2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted\n2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted\n2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)\n2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted\n2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted\n2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted\n2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted\n2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)\n2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)\n2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted\n2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted\n2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted\n2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted\n2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted\n2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)\n2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)\n2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted\n2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted\n2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted\n2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted\n2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)\n2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted\n2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted\n2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted\n2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted\n2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)\n2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)\n2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted\n2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted\n2026-05-08T16:38:05.259643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:39:12.909832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4321081535914644542, trigger=click)\n2026-05-08T16:40:25.623018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:26.162271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:34.047657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:41:02.718859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:03.098668Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:16.889941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:20.751594Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:21.369201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:23.458753Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:25.774982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:26.132226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:59.022538Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:42:41.097366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:42:42.261030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 31 eligible frames\n2026-05-08T16:42:44.064372Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.5x), 13 JPEGs deleted\n2026-05-08T16:42:46.662334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.5MB → 1.5MB (2.3x), 16 JPEGs deleted\n2026-05-08T16:42:47.389518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:48.716698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:49.102268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:06.793592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:31.893014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:32.345271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.581195Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.886933Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.544984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.925140Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:44:38.882726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:44:48.889640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:45:05.617375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.378021Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.769482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:42.323256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:43.644103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:45:47.974160Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:48.412303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:11.770600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:17.454947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:40.347527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:44.061494Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:35.490643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:47.088520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-08T16:47:48.755861Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.7x), 26 JPEGs deleted\n2026-05-08T16:47:52.724104Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 6.4MB → 2.7MB (2.4x), 31 JPEGs deleted\n2026-05-08T16:48:22.828507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:48:23.287880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:52:52.850297Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-08T16:52:54.488448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (13.0x), 20 JPEGs deleted\n2026-05-08T16:52:59.167917Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 6.0MB → 2.1MB (2.9x), 28 JPEGs deleted\n2026-05-08T16:52:59.739196Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2681294723136147157, trigger=visual_change)\n2026-05-08T16:53:46.074968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:53:50.568386Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:51.098515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:52.118978Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:54:06.885143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:55:53.707471Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:04.273696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:06.475248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:20.948235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:57:59.235636Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:58:00.576102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.5MB → 0.3MB (13.7x), 21 JPEGs deleted\n2026-05-08T16:58:02.677205Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.1MB → 1.8MB (2.8x), 24 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:03:02.727495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-08T17:03:04.155124Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.7MB → 1.0MB (3.8x), 17 JPEGs deleted\n2026-05-08T17:03:06.370939Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.9MB → 1.1MB (2.7x), 15 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:08:07.329819Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T17:08:08.613840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.2x), 11 JPEGs deleted\n2026-05-08T17:08:10.226518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.9MB (2.4x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:13:11.065153Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T17:13:12.228821Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.8x), 11 JPEGs deleted\n2026-05-08T17:13:13.499237Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.4MB → 0.5MB (4.9x), 12 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:18:13.581768Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T17:18:14.809894Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.5MB (4.1x), 10 JPEGs deleted\n2026-05-08T17:18:17.087929Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.4MB (4.1x), 9 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:23:17.603142Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T17:23:20.580519Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 3.9MB → 2.4MB (1.6x), 32 JPEGs deleted\n2026-05-08T17:23:22.677783Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.3MB → 1.4MB (3.6x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:27:10.846803Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T17:27:33.963818Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T17:27:54.139850Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T17:28:23.593501Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 27 eligible frames\n2026-05-08T17:28:24.676398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 1.9MB → 0.8MB (2.3x), 14 JPEGs deleted\n2026-05-08T17:28:25.859865Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.7MB (3.1x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:33:25.986558Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T17:33:26.789183Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.2x), 9 JPEGs deleted\n2026-05-08T17:33:27.563285Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.3MB (5.6x), 9 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:38:28.182574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 16 eligible frames\n2026-05-08T17:38:28.886589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.2MB → 0.3MB (4.1x), 7 JPEGs deleted\n2026-05-08T17:38:29.577841Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.4MB → 0.3MB (4.4x), 7 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:43:29.648932Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:04:49.785955Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:04:49.839982Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-08T20:04:53.759343Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:04:55.111393Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:07:00.813313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T20:10:42.618029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3904702670430433497, trigger=visual_change)\n2026-05-08T20:10:45.123463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4711515230144858250, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:11:30.713728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9106810594602201296, trigger=visual_change)\n2026-05-08T20:14:16.217389Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:16.548216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:29.637817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:29.879880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:31.819509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:32.038351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:15:02.831133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:03.062493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:33.901301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1011947311216729661, trigger=visual_change)\n2026-05-08T20:15:43.576201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:15:46.704845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:06.257275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:06.505947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:15.418552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n2026-05-08T20:16:15.861207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:18.366895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2917246102619125165, trigger=visual_change)\n2026-05-08T20:16:40.062731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5807882321273953520, trigger=visual_change)\n2026-05-08T20:16:52.126194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:16:52.345105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:17:05.916922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:06.154673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:40.355758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:18:35.739479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-08T20:18:36.903071Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.4MB → 0.8MB (2.9x), 15 JPEGs deleted\n2026-05-08T20:18:38.091360Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.5MB → 1.0MB (2.5x), 14 JPEGs deleted\n2026-05-08T20:19:13.919404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=visual_change)\n2026-05-08T20:19:14.588314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:14.811065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:55.465907Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:57.976879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:58.210732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.708671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.925638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.677363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.905411Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:02.835482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:03.061655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:04.804572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:05.024363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:06.033713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:09.059128Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:12.226392Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:45.726452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:20:45.969849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:21:24.493370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7580227543850059871, trigger=visual_change)\n2026-05-08T20:23:38.466934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-08T20:23:39.547544Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (6.8x), 17 JPEGs deleted\n2026-05-08T20:23:41.531398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.1MB → 1.1MB (2.7x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:28:18.706090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4774948292970121772, trigger=click)\n2026-05-08T20:28:41.580799Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 108 eligible frames\n2026-05-08T20:28:43.831390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-894876205704438670, trigger=visual_change)\n2026-05-08T20:28:44.969294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 8.2MB → 0.5MB (17.6x), 49 JPEGs deleted\n2026-05-08T20:28:49.007095Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 6.7MB → 1.4MB (4.6x), 57 JPEGs deleted\n2026-05-08T20:30:21.343664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n2026-05-08T20:30:27.604106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:31:45.513832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=visual_change)\n2026-05-08T20:31:48.011569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:31:48.249500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:33:49.342449Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 91 eligible frames\n2026-05-08T20:33:51.827637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.0MB → 0.7MB (8.1x), 43 JPEGs deleted\n2026-05-08T20:33:55.054987Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 46 frames, 4.6MB → 1.6MB (2.9x), 46 JPEGs deleted\n2026-05-08T20:35:19.676013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1827677619597110143, trigger=visual_change)\n2026-05-08T20:35:38.608166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7690343374532335752, trigger=visual_change)\n2026-05-08T20:35:42.780526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2703318784337709404, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:35:56.355781Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7823468571821822861, trigger=visual_change)\n2026-05-08T20:36:22.375674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8657760664432582001, trigger=visual_change)\n2026-05-08T20:36:40.473370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7877441979520438018, trigger=visual_change)\n2026-05-08T20:38:33.293511Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-376083047421699892, trigger=click)\n2026-05-08T20:38:55.069048Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-08T20:38:57.007959Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.1MB → 0.6MB (7.0x), 29 JPEGs deleted\n2026-05-08T20:38:59.880873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 4.2MB → 1.1MB (3.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:43:59.926707Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 69 eligible frames\n2026-05-08T20:44:02.056320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 4.5MB → 0.8MB (5.9x), 30 JPEGs deleted\n2026-05-08T20:44:04.341761Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 4.5MB → 2.0MB (2.3x), 37 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:49:04.409956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 126 eligible frames\n2026-05-08T20:49:08.673448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 59 frames, 8.8MB → 0.6MB (15.1x), 59 JPEGs deleted\n2026-05-08T20:49:12.421439Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 65 frames, 10.1MB → 3.7MB (2.7x), 65 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:52:43.279175Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T20:53:02.542074Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T20:53:22.223671Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T20:53:43.376875Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:53:44.320342Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:44.702482Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-08T20:53:44.766868Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:53:44.769563Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-08T20:53:45.630546Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:50.481960Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:54:12.517407Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T20:54:13.846591Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.2MB (14.2x), 22 JPEGs deleted\n2026-05-08T20:54:15.514639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.5MB → 1.2MB (2.9x), 24 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:57:17.294028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7444095039019316179, trigger=visual_change)\n2026-05-08T20:59:15.557119Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T20:59:16.329704Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T20:59:17.043864Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (7.1x), 10 JPEGs deleted\n2026-05-08T20:59:47.460912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3104042594135371283, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:00:57.894791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2951187366245898742, trigger=visual_change)\n2026-05-08T21:01:06.613235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:01:09.013878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:02:24.900144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4793981130858720403, trigger=visual_change)\n2026-05-08T21:03:00.834443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4979005722608610110, trigger=visual_change)\n2026-05-08T21:03:15.059207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:20.421861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:21.573271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.482847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.732285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:25.504075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:28.620241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:33.210921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3561975034088737886, trigger=click)\n2026-05-08T21:03:40.672959Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=visual_change)\n2026-05-08T21:03:43.051397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=click)\n2026-05-08T21:04:17.068960Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T21:04:17.779581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:04:18.546629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.3MB (4.6x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:05:58.181337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:05:58.465844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.754242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.989794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.164993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.428989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:17.267949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4552264416724558099, trigger=visual_change)\n2026-05-08T21:06:23.722803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7038235136836995999, trigger=visual_change)\n2026-05-08T21:06:24.425270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7038235136836995999, trigger=click)\n2026-05-08T21:06:27.875456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8000279009348332551, trigger=visual_change)\n2026-05-08T21:06:36.770626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:37.052773Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=visual_change)\n2026-05-08T21:06:40.678625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1553333732640047765, trigger=click)\n2026-05-08T21:06:42.970803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1553333732640047765, trigger=visual_change)\n2026-05-08T21:06:50.410701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:50.698201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:51.834995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:52.089131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:55.503231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:06:55.767512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:07:06.797250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:07.080966Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:26.094192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:07:26.358484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:09:18.831192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T21:09:19.849460Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.3x), 16 JPEGs deleted\n2026-05-08T21:09:21.257275Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 2.8MB → 1.1MB (2.5x), 20 JPEGs deleted\n2026-05-08T21:09:24.007459Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8187633539590837799, trigger=click)\n2026-05-08T21:09:37.247842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:38.125950Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.514304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.780918Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:23.638217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:32.249339Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:34.660845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6810519470838372495, trigger=click)\n2026-05-08T21:10:40.455969Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8296869480898852743, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:11:14.128113Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3195497519825248998, trigger=visual_change)\n2026-05-08T21:12:00.471616Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-346550604289919418, trigger=click)\n2026-05-08T21:13:02.802932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:03.331855Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.529228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.911728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:06.816662Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:07.086799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:14:21.327919Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 63 eligible frames\n2026-05-08T21:14:23.102986Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.3MB (12.6x), 22 JPEGs deleted\n2026-05-08T21:14:26.165750Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.6MB → 1.7MB (3.4x), 39 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:17:46.195259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:46.465187Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:51.973404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2738389652473725666, trigger=visual_change)\n2026-05-08T21:18:58.400941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2578505850628214831, trigger=visual_change)\n2026-05-08T21:19:06.416424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:06.685020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:12.267096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:12.544152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:15.017582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=visual_change)\n2026-05-08T21:19:15.591731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:15.868418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:19.875345Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5326607878323909585, trigger=click)\n2026-05-08T21:19:26.216722Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 89 eligible frames\n2026-05-08T21:19:28.902767Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 6.7MB → 0.2MB (27.6x), 44 JPEGs deleted\n2026-05-08T21:19:31.813806Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.8MB → 1.0MB (6.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:24:31.867377Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T21:24:34.120438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 4.9MB → 0.2MB (20.4x), 32 JPEGs deleted\n2026-05-08T21:24:35.774008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 3.4MB → 1.1MB (3.1x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:29:36.175579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 85 eligible frames\n2026-05-08T21:29:38.440399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.0MB → 0.5MB (13.2x), 39 JPEGs deleted\n2026-05-08T21:29:41.331730Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 5.2MB → 1.1MB (4.7x), 44 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:31:54.638020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:31:54.936743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:34:41.431775Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:34:42.151157Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:34:42.946170Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.4MB (3.7x), 10 JPEGs deleted\n2026-05-08T21:35:37.068968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.020865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.339742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:36:06.995315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:36:46.380456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:32.308787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:38.397888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:41.424353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:38:08.557506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:38:57.045355Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=visual_change)\n2026-05-08T21:39:42.978091Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:39:43.722518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:39:44.469363Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.2MB (5.2x), 10 JPEGs deleted\n2026-05-08T21:40:29.390307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:31.641192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:33.573652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:44:44.495988Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T21:44:45.246239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.2MB (7.3x), 11 JPEGs deleted\n2026-05-08T21:44:46.141107Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.7MB → 0.4MB (4.0x), 12 JPEGs deleted\n2026-05-08T21:45:20.057437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:21.321027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:27.255754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:28.774563Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:29.099275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:49:46.184240Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T21:49:46.901735Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:49:47.790415Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.6MB (2.5x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:52:33.716988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2581436281688479551, trigger=visual_change)\n2026-05-08T21:54:47.803942Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:54:48.610000Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.9MB → 0.2MB (8.0x), 12 JPEGs deleted\n2026-05-08T21:54:49.563965Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.8MB (2.3x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:59:49.577066Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:59:50.659239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:59:51.627801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.4MB (6.0x), 13 JPEGs deleted\n2026-05-08T21:59:53.243879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:53.551127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:54.536127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:57.147010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:57.467025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.013866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.417155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:59.342346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:00.358167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.462210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.847552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:05.867385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:06.215294Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:09.191593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=76416274129722, trigger=click)\n2026-05-08T22:00:13.029530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:13.348919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.688528Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.999189Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.0,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.004166667,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.14097223,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.14513889,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.28194445,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.28611112,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.42291668,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42708334,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5638889,"top":0.05888889,"width":0.14097223,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.56805557,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.7048611,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.70902777,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Python\"","depth":2,"bounds":{"left":0.8454861,"top":0.05888889,"width":0.140625,"height":0.026666667},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.84965277,"top":0.06333333,"width":0.011111111,"height":0.017777778},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.95763886,"top":0.032222223,"width":0.03888889,"height":0.018888889},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.4722222,"top":0.033333335,"width":0.058333334,"height":0.017777778},"on_screen":true,"role_description":"text"}]...
|
-6082481048900001805
|
3292597617512260985
|
click
|
accessibility
|
NULL
|
2026-05-08T14:49:49.609203Z INFO screenpipe_engin 2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)
2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted
2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted
2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)
2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)
2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames
2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted
2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted
2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)
2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames
2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted
2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted
2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)
2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted
2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted
2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames
2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted
2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted
2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted
2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted
2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames
2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted
2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted
2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted
2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted
2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames
2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted
2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames
2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted
2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted
2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted
2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)
2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted
2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted
2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted
2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted
2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)
2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)
2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted
2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted
2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted
2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted
2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted
2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)
2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)
2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames
2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted
2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted
2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted
2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted
2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)
2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted
2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted
2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames
2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted
2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted
2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)
2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)
2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)
2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)
2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted
2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted
2026-05-08T16:38:05.259643Z INFO screenpipe_...
|
11285
|
NULL
|
NULL
|
NULL
|
|
11286
|
512
|
4
|
2026-05-08T19:00:20.200389+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-08/1778 /Users/lukas/.screenpipe/data/data/2026-05-08/1778266820200_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-08T14:49:49.609203Z INFO screenpipe_engin 2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)
2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted
2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted
2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)
2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)
2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames
2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted
2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted
2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)
2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames
2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted
2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted
2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)
2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted
2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted
2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames
2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted
2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted
2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted
2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted
2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames
2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted
2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted
2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted
2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted
2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames
2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted
2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames
2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted
2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted
2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted
2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)
2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted
2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted
2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted
2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted
2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)
2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)
2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted
2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted
2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted
2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted
2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted
2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)
2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)
2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames
2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted
2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted
2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted
2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted
2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)
2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted
2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted
2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames
2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted
2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted
2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)
2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)
2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)
2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)
2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted
2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted
2026-05-08T16:38:05.259643Z INFO screenpipe_...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)\n2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted\n2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)\n2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)\n2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted\n2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted\n2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)\n2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted\n2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted\n2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)\n2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames\n2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted\n2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted\n2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames\n2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted\n2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted\n2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted\n2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted\n2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted\n2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted\n2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted\n2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted\n2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted\n2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted\n2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted\n2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)\n2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted\n2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted\n2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted\n2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted\n2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)\n2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)\n2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted\n2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted\n2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted\n2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted\n2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted\n2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)\n2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)\n2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted\n2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted\n2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted\n2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted\n2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)\n2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted\n2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted\n2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted\n2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted\n2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)\n2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)\n2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted\n2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted\n2026-05-08T16:38:05.259643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:39:12.909832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4321081535914644542, trigger=click)\n2026-05-08T16:40:25.623018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:26.162271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:34.047657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:41:02.718859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:03.098668Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:16.889941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:20.751594Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:21.369201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:23.458753Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:25.774982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:26.132226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:59.022538Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:42:41.097366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:42:42.261030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 31 eligible frames\n2026-05-08T16:42:44.064372Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.5x), 13 JPEGs deleted\n2026-05-08T16:42:46.662334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.5MB → 1.5MB (2.3x), 16 JPEGs deleted\n2026-05-08T16:42:47.389518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:48.716698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:49.102268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:06.793592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:31.893014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:32.345271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.581195Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.886933Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.544984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.925140Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:44:38.882726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:44:48.889640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:45:05.617375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.378021Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.769482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:42.323256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:43.644103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:45:47.974160Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:48.412303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:11.770600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:17.454947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:40.347527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:44.061494Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:35.490643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:47.088520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-08T16:47:48.755861Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.7x), 26 JPEGs deleted\n2026-05-08T16:47:52.724104Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 6.4MB → 2.7MB (2.4x), 31 JPEGs deleted\n2026-05-08T16:48:22.828507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:48:23.287880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:52:52.850297Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-08T16:52:54.488448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (13.0x), 20 JPEGs deleted\n2026-05-08T16:52:59.167917Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 6.0MB → 2.1MB (2.9x), 28 JPEGs deleted\n2026-05-08T16:52:59.739196Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2681294723136147157, trigger=visual_change)\n2026-05-08T16:53:46.074968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:53:50.568386Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:51.098515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:52.118978Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:54:06.885143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:55:53.707471Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:04.273696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:06.475248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:20.948235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:57:59.235636Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:58:00.576102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.5MB → 0.3MB (13.7x), 21 JPEGs deleted\n2026-05-08T16:58:02.677205Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.1MB → 1.8MB (2.8x), 24 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:03:02.727495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-08T17:03:04.155124Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.7MB → 1.0MB (3.8x), 17 JPEGs deleted\n2026-05-08T17:03:06.370939Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.9MB → 1.1MB (2.7x), 15 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:08:07.329819Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T17:08:08.613840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.2x), 11 JPEGs deleted\n2026-05-08T17:08:10.226518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.9MB (2.4x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:13:11.065153Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T17:13:12.228821Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.8x), 11 JPEGs deleted\n2026-05-08T17:13:13.499237Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.4MB → 0.5MB (4.9x), 12 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:18:13.581768Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T17:18:14.809894Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.5MB (4.1x), 10 JPEGs deleted\n2026-05-08T17:18:17.087929Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.4MB (4.1x), 9 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:23:17.603142Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T17:23:20.580519Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 3.9MB → 2.4MB (1.6x), 32 JPEGs deleted\n2026-05-08T17:23:22.677783Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.3MB → 1.4MB (3.6x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:27:10.846803Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T17:27:33.963818Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T17:27:54.139850Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T17:28:23.593501Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 27 eligible frames\n2026-05-08T17:28:24.676398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 1.9MB → 0.8MB (2.3x), 14 JPEGs deleted\n2026-05-08T17:28:25.859865Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.7MB (3.1x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:33:25.986558Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T17:33:26.789183Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.2x), 9 JPEGs deleted\n2026-05-08T17:33:27.563285Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.3MB (5.6x), 9 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:38:28.182574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 16 eligible frames\n2026-05-08T17:38:28.886589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.2MB → 0.3MB (4.1x), 7 JPEGs deleted\n2026-05-08T17:38:29.577841Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.4MB → 0.3MB (4.4x), 7 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:43:29.648932Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:04:49.785955Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:04:49.839982Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-08T20:04:53.759343Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:04:55.111393Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:07:00.813313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T20:10:42.618029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3904702670430433497, trigger=visual_change)\n2026-05-08T20:10:45.123463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4711515230144858250, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:11:30.713728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9106810594602201296, trigger=visual_change)\n2026-05-08T20:14:16.217389Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:16.548216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:29.637817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:29.879880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:31.819509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:32.038351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:15:02.831133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:03.062493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:33.901301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1011947311216729661, trigger=visual_change)\n2026-05-08T20:15:43.576201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:15:46.704845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:06.257275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:06.505947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:15.418552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n2026-05-08T20:16:15.861207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:18.366895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2917246102619125165, trigger=visual_change)\n2026-05-08T20:16:40.062731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5807882321273953520, trigger=visual_change)\n2026-05-08T20:16:52.126194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:16:52.345105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:17:05.916922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:06.154673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:40.355758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:18:35.739479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-08T20:18:36.903071Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.4MB → 0.8MB (2.9x), 15 JPEGs deleted\n2026-05-08T20:18:38.091360Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.5MB → 1.0MB (2.5x), 14 JPEGs deleted\n2026-05-08T20:19:13.919404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=visual_change)\n2026-05-08T20:19:14.588314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:14.811065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:55.465907Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:57.976879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:58.210732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.708671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.925638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.677363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.905411Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:02.835482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:03.061655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:04.804572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:05.024363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:06.033713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:09.059128Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:12.226392Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:45.726452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:20:45.969849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:21:24.493370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7580227543850059871, trigger=visual_change)\n2026-05-08T20:23:38.466934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-08T20:23:39.547544Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (6.8x), 17 JPEGs deleted\n2026-05-08T20:23:41.531398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.1MB → 1.1MB (2.7x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:28:18.706090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4774948292970121772, trigger=click)\n2026-05-08T20:28:41.580799Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 108 eligible frames\n2026-05-08T20:28:43.831390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-894876205704438670, trigger=visual_change)\n2026-05-08T20:28:44.969294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 8.2MB → 0.5MB (17.6x), 49 JPEGs deleted\n2026-05-08T20:28:49.007095Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 6.7MB → 1.4MB (4.6x), 57 JPEGs deleted\n2026-05-08T20:30:21.343664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n2026-05-08T20:30:27.604106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:31:45.513832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=visual_change)\n2026-05-08T20:31:48.011569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:31:48.249500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:33:49.342449Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 91 eligible frames\n2026-05-08T20:33:51.827637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.0MB → 0.7MB (8.1x), 43 JPEGs deleted\n2026-05-08T20:33:55.054987Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 46 frames, 4.6MB → 1.6MB (2.9x), 46 JPEGs deleted\n2026-05-08T20:35:19.676013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1827677619597110143, trigger=visual_change)\n2026-05-08T20:35:38.608166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7690343374532335752, trigger=visual_change)\n2026-05-08T20:35:42.780526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2703318784337709404, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:35:56.355781Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7823468571821822861, trigger=visual_change)\n2026-05-08T20:36:22.375674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8657760664432582001, trigger=visual_change)\n2026-05-08T20:36:40.473370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7877441979520438018, trigger=visual_change)\n2026-05-08T20:38:33.293511Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-376083047421699892, trigger=click)\n2026-05-08T20:38:55.069048Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-08T20:38:57.007959Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.1MB → 0.6MB (7.0x), 29 JPEGs deleted\n2026-05-08T20:38:59.880873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 4.2MB → 1.1MB (3.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:43:59.926707Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 69 eligible frames\n2026-05-08T20:44:02.056320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 4.5MB → 0.8MB (5.9x), 30 JPEGs deleted\n2026-05-08T20:44:04.341761Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 4.5MB → 2.0MB (2.3x), 37 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:49:04.409956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 126 eligible frames\n2026-05-08T20:49:08.673448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 59 frames, 8.8MB → 0.6MB (15.1x), 59 JPEGs deleted\n2026-05-08T20:49:12.421439Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 65 frames, 10.1MB → 3.7MB (2.7x), 65 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:52:43.279175Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T20:53:02.542074Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T20:53:22.223671Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T20:53:43.376875Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:53:44.320342Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:44.702482Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-08T20:53:44.766868Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:53:44.769563Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-08T20:53:45.630546Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:50.481960Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:54:12.517407Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T20:54:13.846591Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.2MB (14.2x), 22 JPEGs deleted\n2026-05-08T20:54:15.514639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.5MB → 1.2MB (2.9x), 24 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:57:17.294028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7444095039019316179, trigger=visual_change)\n2026-05-08T20:59:15.557119Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T20:59:16.329704Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T20:59:17.043864Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (7.1x), 10 JPEGs deleted\n2026-05-08T20:59:47.460912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3104042594135371283, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:00:57.894791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2951187366245898742, trigger=visual_change)\n2026-05-08T21:01:06.613235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:01:09.013878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:02:24.900144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4793981130858720403, trigger=visual_change)\n2026-05-08T21:03:00.834443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4979005722608610110, trigger=visual_change)\n2026-05-08T21:03:15.059207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:20.421861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:21.573271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.482847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.732285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:25.504075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:28.620241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:33.210921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3561975034088737886, trigger=click)\n2026-05-08T21:03:40.672959Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=visual_change)\n2026-05-08T21:03:43.051397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=click)\n2026-05-08T21:04:17.068960Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T21:04:17.779581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:04:18.546629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.3MB (4.6x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:05:58.181337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:05:58.465844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.754242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.989794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.164993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.428989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:17.267949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4552264416724558099, trigger=visual_change)\n2026-05-08T21:06:23.722803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7038235136836995999, trigger=visual_change)\n2026-05-08T21:06:24.425270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7038235136836995999, trigger=click)\n2026-05-08T21:06:27.875456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8000279009348332551, trigger=visual_change)\n2026-05-08T21:06:36.770626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:37.052773Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=visual_change)\n2026-05-08T21:06:40.678625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1553333732640047765, trigger=click)\n2026-05-08T21:06:42.970803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1553333732640047765, trigger=visual_change)\n2026-05-08T21:06:50.410701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:50.698201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:51.834995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:52.089131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:55.503231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:06:55.767512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:07:06.797250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:07.080966Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:26.094192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:07:26.358484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:09:18.831192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T21:09:19.849460Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.3x), 16 JPEGs deleted\n2026-05-08T21:09:21.257275Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 2.8MB → 1.1MB (2.5x), 20 JPEGs deleted\n2026-05-08T21:09:24.007459Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8187633539590837799, trigger=click)\n2026-05-08T21:09:37.247842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:38.125950Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.514304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.780918Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:23.638217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:32.249339Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:34.660845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6810519470838372495, trigger=click)\n2026-05-08T21:10:40.455969Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8296869480898852743, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:11:14.128113Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3195497519825248998, trigger=visual_change)\n2026-05-08T21:12:00.471616Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-346550604289919418, trigger=click)\n2026-05-08T21:13:02.802932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:03.331855Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.529228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.911728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:06.816662Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:07.086799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:14:21.327919Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 63 eligible frames\n2026-05-08T21:14:23.102986Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.3MB (12.6x), 22 JPEGs deleted\n2026-05-08T21:14:26.165750Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.6MB → 1.7MB (3.4x), 39 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:17:46.195259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:46.465187Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:51.973404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2738389652473725666, trigger=visual_change)\n2026-05-08T21:18:58.400941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2578505850628214831, trigger=visual_change)\n2026-05-08T21:19:06.416424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:06.685020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:12.267096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:12.544152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:15.017582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=visual_change)\n2026-05-08T21:19:15.591731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:15.868418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:19.875345Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5326607878323909585, trigger=click)\n2026-05-08T21:19:26.216722Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 89 eligible frames\n2026-05-08T21:19:28.902767Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 6.7MB → 0.2MB (27.6x), 44 JPEGs deleted\n2026-05-08T21:19:31.813806Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.8MB → 1.0MB (6.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:24:31.867377Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T21:24:34.120438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 4.9MB → 0.2MB (20.4x), 32 JPEGs deleted\n2026-05-08T21:24:35.774008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 3.4MB → 1.1MB (3.1x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:29:36.175579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 85 eligible frames\n2026-05-08T21:29:38.440399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.0MB → 0.5MB (13.2x), 39 JPEGs deleted\n2026-05-08T21:29:41.331730Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 5.2MB → 1.1MB (4.7x), 44 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:31:54.638020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:31:54.936743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:34:41.431775Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:34:42.151157Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:34:42.946170Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.4MB (3.7x), 10 JPEGs deleted\n2026-05-08T21:35:37.068968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.020865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.339742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:36:06.995315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:36:46.380456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:32.308787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:38.397888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:41.424353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:38:08.557506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:38:57.045355Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=visual_change)\n2026-05-08T21:39:42.978091Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:39:43.722518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:39:44.469363Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.2MB (5.2x), 10 JPEGs deleted\n2026-05-08T21:40:29.390307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:31.641192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:33.573652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:44:44.495988Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T21:44:45.246239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.2MB (7.3x), 11 JPEGs deleted\n2026-05-08T21:44:46.141107Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.7MB → 0.4MB (4.0x), 12 JPEGs deleted\n2026-05-08T21:45:20.057437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:21.321027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:27.255754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:28.774563Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:29.099275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:49:46.184240Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T21:49:46.901735Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:49:47.790415Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.6MB (2.5x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:52:33.716988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2581436281688479551, trigger=visual_change)\n2026-05-08T21:54:47.803942Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:54:48.610000Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.9MB → 0.2MB (8.0x), 12 JPEGs deleted\n2026-05-08T21:54:49.563965Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.8MB (2.3x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:59:49.577066Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:59:50.659239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:59:51.627801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.4MB (6.0x), 13 JPEGs deleted\n2026-05-08T21:59:53.243879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:53.551127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:54.536127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:57.147010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:57.467025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.013866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.417155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:59.342346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:00.358167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.462210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.847552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:05.867385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:06.215294Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:09.191593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=76416274129722, trigger=click)\n2026-05-08T22:00:13.029530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:13.348919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.688528Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.999189Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)","depth":4,"on_screen":true,"value":"2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)\n2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted\n2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)\n2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)\n2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)\n2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted\n2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted\n2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)\n2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted\n2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted\n2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)\n2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)\n2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames\n2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted\n2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted\n2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)\n2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)\n2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames\n2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted\n2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted\n2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)\n2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)\n2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted\n2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted\n2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)\n2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)\n2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)\n2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames\n2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted\n2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted\n2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted\n2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted\n2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted\n2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted\n2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted\n2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted\n2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted\n2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)\n2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted\n2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted\n2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames\n2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted\n2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted\n2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)\n2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)\n2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)\n2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)\n2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted\n2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted\n2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)\n2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)\n2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)\n2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)\n2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted\n2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames\n2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted\n2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted\n2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)\n2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)\n2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)\n2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)\n2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted\n2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted\n2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted\n2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted\n2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)\n2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames\n2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted\n2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted\n2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted\n2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted\n2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)\n2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)\n2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)\n2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)\n2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)\n2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)\n2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted\n2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted\n2026-05-08T16:38:05.259643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:39:12.909832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4321081535914644542, trigger=click)\n2026-05-08T16:40:25.623018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:26.162271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:40:34.047657Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T16:41:02.718859Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:03.098668Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:41:16.889941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:20.751594Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:21.369201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:23.458753Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:25.774982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)\n2026-05-08T16:41:26.132226Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)\n2026-05-08T16:41:59.022538Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)\n2026-05-08T16:42:41.097366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:42:42.261030Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 31 eligible frames\n2026-05-08T16:42:44.064372Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.5x), 13 JPEGs deleted\n2026-05-08T16:42:46.662334Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.5MB → 1.5MB (2.3x), 16 JPEGs deleted\n2026-05-08T16:42:47.389518Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:48.716698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:42:49.102268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:06.793592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:43:31.893014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:32.345271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.581195Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:38.886933Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.544984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:43:46.925140Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5883191343445048145, trigger=click)\n2026-05-08T16:44:38.882726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:44:48.889640Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:45:05.617375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.378021Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:39.769482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:42.323256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:43.644103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T16:45:47.974160Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:45:48.412303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:11.770600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:17.454947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:40.347527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:46:44.061494Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:35.490643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:47:47.088520Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-08T16:47:48.755861Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.7x), 26 JPEGs deleted\n2026-05-08T16:47:52.724104Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 6.4MB → 2.7MB (2.4x), 31 JPEGs deleted\n2026-05-08T16:48:22.828507Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:48:23.287880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T16:52:52.850297Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 50 eligible frames\n2026-05-08T16:52:54.488448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (13.0x), 20 JPEGs deleted\n2026-05-08T16:52:59.167917Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 6.0MB → 2.1MB (2.9x), 28 JPEGs deleted\n2026-05-08T16:52:59.739196Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2681294723136147157, trigger=visual_change)\n2026-05-08T16:53:46.074968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n2026-05-08T16:53:50.568386Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:51.098515Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:53:52.118978Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T16:54:06.885143Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T16:55:53.707471Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:04.273696Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:06.475248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:56:20.948235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8760551860460575298, trigger=visual_change)\n2026-05-08T16:57:59.235636Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames\n2026-05-08T16:58:00.576102Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.5MB → 0.3MB (13.7x), 21 JPEGs deleted\n2026-05-08T16:58:02.677205Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 5.1MB → 1.8MB (2.8x), 24 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:03:02.727495Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 34 eligible frames\n2026-05-08T17:03:04.155124Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.7MB → 1.0MB (3.8x), 17 JPEGs deleted\n2026-05-08T17:03:06.370939Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.9MB → 1.1MB (2.7x), 15 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:08:07.329819Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T17:08:08.613840Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.2x), 11 JPEGs deleted\n2026-05-08T17:08:10.226518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.9MB (2.4x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:13:11.065153Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T17:13:12.228821Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.5MB → 0.4MB (6.8x), 11 JPEGs deleted\n2026-05-08T17:13:13.499237Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.4MB → 0.5MB (4.9x), 12 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:18:13.581768Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T17:18:14.809894Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.5MB (4.1x), 10 JPEGs deleted\n2026-05-08T17:18:17.087929Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.4MB (4.1x), 9 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:23:17.603142Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T17:23:20.580519Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 3.9MB → 2.4MB (1.6x), 32 JPEGs deleted\n2026-05-08T17:23:22.677783Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 5.3MB → 1.4MB (3.6x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T17:27:10.846803Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T17:27:33.963818Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T17:27:54.139850Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T17:28:23.593501Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 27 eligible frames\n2026-05-08T17:28:24.676398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 1.9MB → 0.8MB (2.3x), 14 JPEGs deleted\n2026-05-08T17:28:25.859865Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.7MB (3.1x), 11 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T17:33:25.986558Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T17:33:26.789183Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.2x), 9 JPEGs deleted\n2026-05-08T17:33:27.563285Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.3MB (5.6x), 9 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T17:38:28.182574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 16 eligible frames\n2026-05-08T17:38:28.886589Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.2MB → 0.3MB (4.1x), 7 JPEGs deleted\n2026-05-08T17:38:29.577841Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 7 frames, 1.4MB → 0.3MB (4.4x), 7 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T17:43:29.648932Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:04:49.785955Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:04:49.839982Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-08T20:04:53.759343Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:04:55.111393Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:07:00.813313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3419229447380999607, trigger=click)\n2026-05-08T20:10:42.618029Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3904702670430433497, trigger=visual_change)\n2026-05-08T20:10:45.123463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4711515230144858250, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:11:30.713728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9106810594602201296, trigger=visual_change)\n2026-05-08T20:14:16.217389Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:16.548216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8678122558758992089, trigger=click)\n2026-05-08T20:14:29.637817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:29.879880Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:31.819509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:14:32.038351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5564194284655003331, trigger=click)\n2026-05-08T20:15:02.831133Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:03.062493Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3566290418673676848, trigger=click)\n2026-05-08T20:15:33.901301Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1011947311216729661, trigger=visual_change)\n2026-05-08T20:15:43.576201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:15:46.704845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:06.257275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:06.505947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-22493054356080542, trigger=click)\n2026-05-08T20:16:15.418552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3336549289137172164, trigger=visual_change)\n2026-05-08T20:16:15.861207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:16:18.366895Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2917246102619125165, trigger=visual_change)\n2026-05-08T20:16:40.062731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5807882321273953520, trigger=visual_change)\n2026-05-08T20:16:52.126194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:16:52.345105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2597384770154968862, trigger=click)\n2026-05-08T20:17:05.916922Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:06.154673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7911199581549260227, trigger=click)\n2026-05-08T20:17:40.355758Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3336549289137172164, trigger=click)\n2026-05-08T20:18:35.739479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-08T20:18:36.903071Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.4MB → 0.8MB (2.9x), 15 JPEGs deleted\n2026-05-08T20:18:38.091360Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.5MB → 1.0MB (2.5x), 14 JPEGs deleted\n2026-05-08T20:19:13.919404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=visual_change)\n2026-05-08T20:19:14.588314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:14.811065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4794524200660272752, trigger=click)\n2026-05-08T20:19:55.465907Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:57.976879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:19:58.210732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.708671Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:00.925638Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.677363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:01.905411Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:02.835482Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:03.061655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:04.804572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:05.024363Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=click)\n2026-05-08T20:20:06.033713Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:09.059128Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:12.226392Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7299844304579753263, trigger=visual_change)\n2026-05-08T20:20:45.726452Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:20:45.969849Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:21:24.493370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7580227543850059871, trigger=visual_change)\n2026-05-08T20:23:38.466934Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-08T20:23:39.547544Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (6.8x), 17 JPEGs deleted\n2026-05-08T20:23:41.531398Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.1MB → 1.1MB (2.7x), 24 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:28:18.706090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4774948292970121772, trigger=click)\n2026-05-08T20:28:41.580799Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 108 eligible frames\n2026-05-08T20:28:43.831390Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-894876205704438670, trigger=visual_change)\n2026-05-08T20:28:44.969294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 49 frames, 8.2MB → 0.5MB (17.6x), 49 JPEGs deleted\n2026-05-08T20:28:49.007095Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 57 frames, 6.7MB → 1.4MB (4.6x), 57 JPEGs deleted\n2026-05-08T20:30:21.343664Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n2026-05-08T20:30:27.604106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5116372192054332246, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:31:45.513832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=visual_change)\n2026-05-08T20:31:48.011569Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:31:48.249500Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4790751073278730901, trigger=click)\n2026-05-08T20:33:49.342449Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 91 eligible frames\n2026-05-08T20:33:51.827637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.0MB → 0.7MB (8.1x), 43 JPEGs deleted\n2026-05-08T20:33:55.054987Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 46 frames, 4.6MB → 1.6MB (2.9x), 46 JPEGs deleted\n2026-05-08T20:35:19.676013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1827677619597110143, trigger=visual_change)\n2026-05-08T20:35:38.608166Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7690343374532335752, trigger=visual_change)\n2026-05-08T20:35:42.780526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2703318784337709404, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:35:56.355781Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7823468571821822861, trigger=visual_change)\n2026-05-08T20:36:22.375674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8657760664432582001, trigger=visual_change)\n2026-05-08T20:36:40.473370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7877441979520438018, trigger=visual_change)\n2026-05-08T20:38:33.293511Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-376083047421699892, trigger=click)\n2026-05-08T20:38:55.069048Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 74 eligible frames\n2026-05-08T20:38:57.007959Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.1MB → 0.6MB (7.0x), 29 JPEGs deleted\n2026-05-08T20:38:59.880873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 4.2MB → 1.1MB (3.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T20:43:59.926707Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 69 eligible frames\n2026-05-08T20:44:02.056320Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 30 frames, 4.5MB → 0.8MB (5.9x), 30 JPEGs deleted\n2026-05-08T20:44:04.341761Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 4.5MB → 2.0MB (2.3x), 37 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T20:49:04.409956Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 126 eligible frames\n2026-05-08T20:49:08.673448Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 59 frames, 8.8MB → 0.6MB (15.1x), 59 JPEGs deleted\n2026-05-08T20:49:12.421439Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 65 frames, 10.1MB → 3.7MB (2.7x), 65 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T20:52:43.279175Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T20:53:02.542074Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-08T20:53:22.223671Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T20:53:43.376875Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T20:53:44.320342Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:44.702482Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-08T20:53:44.766868Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:53:44.769563Z INFO sck_rs::stream_manager: stopped 2 persistent stream(s)\n2026-05-08T20:53:45.630546Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T20:53:50.481960Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T20:54:12.517407Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames\n2026-05-08T20:54:13.846591Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.2MB (14.2x), 22 JPEGs deleted\n2026-05-08T20:54:15.514639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 3.5MB → 1.2MB (2.9x), 24 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T20:57:17.294028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7444095039019316179, trigger=visual_change)\n2026-05-08T20:59:15.557119Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T20:59:16.329704Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T20:59:17.043864Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (7.1x), 10 JPEGs deleted\n2026-05-08T20:59:47.460912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3104042594135371283, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:00:57.894791Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2951187366245898742, trigger=visual_change)\n2026-05-08T21:01:06.613235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:01:09.013878Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2951187366245898742, trigger=click)\n2026-05-08T21:02:24.900144Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4793981130858720403, trigger=visual_change)\n2026-05-08T21:03:00.834443Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4979005722608610110, trigger=visual_change)\n2026-05-08T21:03:15.059207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:20.421861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:21.573271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.482847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:24.732285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=772314446463751549, trigger=click)\n2026-05-08T21:03:25.504075Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:28.620241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=772314446463751549, trigger=visual_change)\n2026-05-08T21:03:33.210921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3561975034088737886, trigger=click)\n2026-05-08T21:03:40.672959Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=visual_change)\n2026-05-08T21:03:43.051397Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7623036389246058441, trigger=click)\n2026-05-08T21:04:17.068960Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T21:04:17.779581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:04:18.546629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.3MB (4.6x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:05:58.181337Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:05:58.465844Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.754242Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:00.989794Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.164993Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:08.428989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:06:17.267949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4552264416724558099, trigger=visual_change)\n2026-05-08T21:06:23.722803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7038235136836995999, trigger=visual_change)\n2026-05-08T21:06:24.425270Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7038235136836995999, trigger=click)\n2026-05-08T21:06:27.875456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8000279009348332551, trigger=visual_change)\n2026-05-08T21:06:36.770626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:37.052773Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=visual_change)\n2026-05-08T21:06:40.678625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1553333732640047765, trigger=click)\n2026-05-08T21:06:42.970803Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1553333732640047765, trigger=visual_change)\n2026-05-08T21:06:50.410701Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:50.698201Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:51.834995Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:52.089131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-670601693309784881, trigger=click)\n2026-05-08T21:06:55.503231Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:06:55.767512Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5416267253186340166, trigger=click)\n2026-05-08T21:07:06.797250Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:07.080966Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1598254649572854029, trigger=click)\n2026-05-08T21:07:26.094192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:07:26.358484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6162862082642678309, trigger=click)\n2026-05-08T21:09:18.831192Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames\n2026-05-08T21:09:19.849460Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.4MB → 0.2MB (10.3x), 16 JPEGs deleted\n2026-05-08T21:09:21.257275Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 2.8MB → 1.1MB (2.5x), 20 JPEGs deleted\n2026-05-08T21:09:24.007459Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8187633539590837799, trigger=click)\n2026-05-08T21:09:37.247842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:38.125950Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.514304Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:09:42.780918Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:23.638217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:32.249339Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=9051696218642254292, trigger=click)\n2026-05-08T21:10:34.660845Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6810519470838372495, trigger=click)\n2026-05-08T21:10:40.455969Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8296869480898852743, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:11:14.128113Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3195497519825248998, trigger=visual_change)\n2026-05-08T21:12:00.471616Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-346550604289919418, trigger=click)\n2026-05-08T21:13:02.802932Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:03.331855Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.529228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:04.911728Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:06.816662Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:13:07.086799Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3773368627623501263, trigger=click)\n2026-05-08T21:14:21.327919Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 63 eligible frames\n2026-05-08T21:14:23.102986Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.4MB → 0.3MB (12.6x), 22 JPEGs deleted\n2026-05-08T21:14:26.165750Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 5.6MB → 1.7MB (3.4x), 39 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:17:46.195259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:46.465187Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4973223297647461121, trigger=click)\n2026-05-08T21:17:51.973404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2738389652473725666, trigger=visual_change)\n2026-05-08T21:18:58.400941Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2578505850628214831, trigger=visual_change)\n2026-05-08T21:19:06.416424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:06.685020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=377549746013414133, trigger=click)\n2026-05-08T21:19:12.267096Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:12.544152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2618173462893528329, trigger=click)\n2026-05-08T21:19:15.017582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=visual_change)\n2026-05-08T21:19:15.591731Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:15.868418Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1459350354743186378, trigger=click)\n2026-05-08T21:19:19.875345Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5326607878323909585, trigger=click)\n2026-05-08T21:19:26.216722Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 89 eligible frames\n2026-05-08T21:19:28.902767Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 6.7MB → 0.2MB (27.6x), 44 JPEGs deleted\n2026-05-08T21:19:31.813806Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 43 frames, 6.8MB → 1.0MB (6.8x), 43 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:24:31.867377Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T21:24:34.120438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 4.9MB → 0.2MB (20.4x), 32 JPEGs deleted\n2026-05-08T21:24:35.774008Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 3.4MB → 1.1MB (3.1x), 27 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:29:36.175579Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 85 eligible frames\n2026-05-08T21:29:38.440399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 39 frames, 6.0MB → 0.5MB (13.2x), 39 JPEGs deleted\n2026-05-08T21:29:41.331730Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 44 frames, 5.2MB → 1.1MB (4.7x), 44 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:31:54.638020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:31:54.936743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6285713294869460431, trigger=click)\n2026-05-08T21:34:41.431775Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:34:42.151157Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:34:42.946170Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.4MB (3.7x), 10 JPEGs deleted\n2026-05-08T21:35:37.068968Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.020865Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:35:40.339742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:36:06.995315Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:36:46.380456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:32.308787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:38.397888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:37:41.424353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1902166815842082686, trigger=visual_change)\n2026-05-08T21:38:08.557506Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1902166815842082686, trigger=click)\n2026-05-08T21:38:57.045355Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=visual_change)\n2026-05-08T21:39:42.978091Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T21:39:43.722518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.7x), 10 JPEGs deleted\n2026-05-08T21:39:44.469363Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.3MB → 0.2MB (5.2x), 10 JPEGs deleted\n2026-05-08T21:40:29.390307Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:31.641192Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:40:33.573652Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T21:44:44.495988Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T21:44:45.246239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.7MB → 0.2MB (7.3x), 11 JPEGs deleted\n2026-05-08T21:44:46.141107Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.7MB → 0.4MB (4.0x), 12 JPEGs deleted\n2026-05-08T21:45:20.057437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:21.321027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:27.255754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:28.774563Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7055243679485869533, trigger=click)\n2026-05-08T21:45:29.099275Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7055243679485869533, trigger=click)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T21:49:46.184240Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T21:49:46.901735Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:49:47.790415Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.6MB (2.5x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T21:52:33.716988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2581436281688479551, trigger=visual_change)\n2026-05-08T21:54:47.803942Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:54:48.610000Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 1.9MB → 0.2MB (8.0x), 12 JPEGs deleted\n2026-05-08T21:54:49.563965Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.8MB (2.3x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T21:59:49.577066Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T21:59:50.659239Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.4MB → 0.2MB (6.0x), 9 JPEGs deleted\n2026-05-08T21:59:51.627801Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.4MB (6.0x), 13 JPEGs deleted\n2026-05-08T21:59:53.243879Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:53.551127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:54.536127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=639999072169464541, trigger=click)\n2026-05-08T21:59:57.147010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:57.467025Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.013866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:58.417155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T21:59:59.342346Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:00.358167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.462210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:02.847552Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:05.867385Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:06.215294Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2601141626454945546, trigger=click)\n2026-05-08T22:00:09.191593Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=76416274129722, trigger=click)\n2026-05-08T22:00:13.029530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:13.348919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.688528Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=665392000360357756, trigger=click)\n2026-05-08T22:00:14.999189Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=665392000360357756, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.33776596,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.33976063,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.40525267,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.40724733,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.47273937,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.47473404,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.54022604,"top":1.0,"width":0.0674867,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5422208,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.60771275,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.6097075,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"Python\"","depth":2,"bounds":{"left":0.6750333,"top":1.0,"width":0.06732048,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.67702794,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-6082481048900001805
|
3292597617512260985
|
click
|
accessibility
|
NULL
|
2026-05-08T14:49:49.609203Z INFO screenpipe_engin 2026-05-08T14:49:49.609203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.287547Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:51.557553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.546127Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:49:55.830946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:11.090897Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.680564Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:13.969205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.154934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:50:29.451120Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T14:50:50.675988Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6568111742294861171, trigger=visual_change)
2026-05-08T14:50:57.102479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames
2026-05-08T14:50:58.101629Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted
2026-05-08T14:50:59.015018Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.1x), 10 JPEGs deleted
2026-05-08T14:53:00.535112Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:04.007595Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T14:53:25.851015Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:26.274372Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:28.930434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:29.328010Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:35.132260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:40.381529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=visual_change)
2026-05-08T14:53:42.076555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4964913726732674038, trigger=click)
2026-05-08T14:53:45.544994Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:46.046519Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.264720Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:47.561308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.382184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:48.743407Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.379962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:53:51.654508Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4751605852753609546, trigger=click)
2026-05-08T14:54:47.348653Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:47.723203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.180917Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:50.478730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:54:58.451377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:09.318848Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:10.862529Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.507785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:18.871963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T14:55:51.534743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:52.200509Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.058321Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames
2026-05-08T14:55:59.519280Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:55:59.767634Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:00.305068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.5MB → 0.5MB (6.6x), 19 JPEGs deleted
2026-05-08T14:56:02.739515Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted
2026-05-08T14:56:05.706811Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T14:56:06.087359Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T14:59:19.019164Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=27295377687985724, trigger=click)
2026-05-08T14:59:56.592361Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-154998861094468201, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:01:02.825868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames
2026-05-08T15:01:05.085725Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.5MB → 0.3MB (16.6x), 27 JPEGs deleted
2026-05-08T15:01:10.221435Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 3.2MB (1.7x), 32 JPEGs deleted
2026-05-08T15:01:13.754698Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:15.582103Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:16.298764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:19.894102Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=click)
2026-05-08T15:01:20.257936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7945320295140438625, trigger=click)
2026-05-08T15:04:19.651821Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7945320295140438625, trigger=visual_change)
2026-05-08T15:04:50.911238Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:11.224935Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:14.480611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:05:51.329864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=click)
2026-05-08T15:05:51.814746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:10.960059Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 82 eligible frames
2026-05-08T15:06:12.742702Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 29 frames, 4.8MB → 0.3MB (17.8x), 29 JPEGs deleted
2026-05-08T15:06:18.913714Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 51 frames, 9.2MB → 3.5MB (2.6x), 51 JPEGs deleted
2026-05-08T15:06:40.139020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6411243940170843070, trigger=click)
2026-05-08T15:06:40.573412Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:06:44.995997Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6411243940170843070, trigger=visual_change)
2026-05-08T15:07:12.301549Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:15.768168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:16.206362Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:22.997889Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:23.588534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:07:35.901520Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:04.603476Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:09:22.666605Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:09:30.864866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:09:36.340393Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:10:01.344041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:05.437030Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:06.082416Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:14.973217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:15.388666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:25.321155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.009832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:30.715271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:33.510944Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:10:34.995072Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:10:44.007798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:10:47.692285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.600937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:03.923842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:11:14.535215Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:18.968690Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 81 eligible frames
2026-05-08T15:11:21.245943Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 5.4MB → 0.3MB (19.3x), 32 JPEGs deleted
2026-05-08T15:11:24.797216Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 47 frames, 7.7MB → 2.5MB (3.1x), 47 JPEGs deleted
2026-05-08T15:11:29.035259Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=visual_change)
2026-05-08T15:11:38.791725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.373759Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:46.723534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:48.539920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:50.779663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.217278Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:11:54.785319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:12:28.499667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.042864Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:32.416014Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:33.786065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:34.078607Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4389898466722807821, trigger=click)
2026-05-08T15:12:41.649510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:45.998721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:50.340079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:52.894661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:12:54.096986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.312751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:54.631514Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:13:55.724081Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.366654Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:03.732487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.125293Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:14:39.453413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:15:49.579257Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:16:25.481662Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames
2026-05-08T15:16:26.679836Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.3MB (8.3x), 13 JPEGs deleted
2026-05-08T15:16:28.026867Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 1.1MB (2.4x), 13 JPEGs deleted
2026-05-08T15:16:49.695422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:05.495401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:09.524793Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=visual_change)
2026-05-08T15:18:11.120775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:11.512222Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=920666202760937713, trigger=click)
2026-05-08T15:18:25.856463Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.463769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:31.806210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:35.550613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:36.021949Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4787811015421350360, trigger=click)
2026-05-08T15:18:52.944742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:55.234377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.183217Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:18:56.628057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:02.717919Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:03.273484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:09.163092Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:20.565501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:23.767875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:19:24.123343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:21:28.072608Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 40 eligible frames
2026-05-08T15:21:29.266572Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.0x), 16 JPEGs deleted
2026-05-08T15:21:31.472410Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.4MB → 1.6MB (2.7x), 22 JPEGs deleted
2026-05-08T15:22:52.709303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T15:25:20.060798Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:25:20.490741Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:26:06.244666Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:06.580582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:26:31.634810Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames
2026-05-08T15:26:32.874346Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.8MB → 0.3MB (7.1x), 11 JPEGs deleted
2026-05-08T15:26:34.255745Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.4MB → 1.1MB (3.1x), 17 JPEGs deleted
2026-05-08T15:28:57.479854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:28:57.740078Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:12.434923Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:16.829366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T15:29:18.361423Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:31:34.666329Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames
2026-05-08T15:31:35.482851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.3MB (7.8x), 12 JPEGs deleted
2026-05-08T15:31:36.499873Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.8MB (2.7x), 11 JPEGs deleted
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:36:36.551444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames
2026-05-08T15:36:37.612979Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.3MB (5.9x), 9 JPEGs deleted
2026-05-08T15:36:38.760326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.5MB → 0.6MB (2.5x), 8 JPEGs deleted
2026-05-08T15:37:22.494625Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4119376164685342865, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T15:41:39.244050Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T15:41:40.346639Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:41:42.541286Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 4.6MB → 1.6MB (2.9x), 23 JPEGs deleted
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T15:46:42.586234Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames
2026-05-08T15:46:43.667243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.3MB (11.0x), 17 JPEGs deleted
2026-05-08T15:46:45.513967Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.2MB → 1.4MB (3.0x), 18 JPEGs deleted
2026-05-08T15:49:24.237883Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9018317124388068051, trigger=click)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T15:51:22.732177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=8556037216162659581, trigger=click)
2026-05-08T15:51:45.899593Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T15:51:48.027425Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.3MB → 0.3MB (12.9x), 20 JPEGs deleted
2026-05-08T15:51:50.132411Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 5.9MB → 2.5MB (2.4x), 25 JPEGs deleted
2026-05-08T15:53:41.459790Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=8556037216162659581, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T15:56:50.195138Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 73 eligible frames
2026-05-08T15:56:51.634851Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 23 frames, 3.8MB → 0.3MB (14.8x), 23 JPEGs deleted
2026-05-08T15:56:56.124421Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 11.2MB → 4.4MB (2.6x), 48 JPEGs deleted
2026-05-08T15:58:27.339768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1171067077588819235, trigger=visual_change)
2026-05-08T15:59:41.630726Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7077191483816511649, trigger=click)
2026-05-08T16:00:03.491890Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:03.888204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.331711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2844556328214808905, trigger=click)
2026-05-08T16:00:07.606440Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2844556328214808905, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:01:08.594472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.096380Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:26.307893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4735302521368238568, trigger=click)
2026-05-08T16:01:56.162848Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames
2026-05-08T16:01:57.213444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.7MB → 0.3MB (10.2x), 16 JPEGs deleted
2026-05-08T16:01:59.474097Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.4MB → 2.2MB (2.0x), 24 JPEGs deleted
2026-05-08T16:02:11.425283Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:02:14.495109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7474424011896884832, trigger=visual_change)
2026-05-08T16:04:46.888847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:47.314661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:49.756313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=visual_change)
2026-05-08T16:04:50.031875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:55.822235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7263191621832440318, trigger=click)
2026-05-08T16:04:56.179808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7263191621832440318, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:06:16.151596Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:06:19.268137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2442208489262293543, trigger=visual_change)
2026-05-08T16:07:00.029126Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 47 eligible frames
2026-05-08T16:07:02.230868Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.2x), 19 JPEGs deleted
2026-05-08T16:07:05.301512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 5.2MB → 2.2MB (2.3x), 26 JPEGs deleted
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:12:05.323575Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 55 eligible frames
2026-05-08T16:12:07.015283Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 19 frames, 3.2MB → 0.3MB (12.3x), 19 JPEGs deleted
2026-05-08T16:12:10.047850Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.4MB → 3.1MB (2.1x), 34 JPEGs deleted
2026-05-08T16:13:48.549264Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:13:51.522434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8766830520303135925, trigger=visual_change)
2026-05-08T16:14:40.081579Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:42.538572Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:44.967369Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:14:45.257318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:16:36.354333Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1628486266948283197, trigger=visual_change)
2026-05-08T16:16:50.996934Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:54.279300Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:16:55.851229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1167165465775525926, trigger=visual_change)
2026-05-08T16:16:58.905093Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1167165465775525926, trigger=click)
2026-05-08T16:17:10.520039Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 48 eligible frames
2026-05-08T16:17:14.585574Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.9MB → 1.1MB (3.4x), 22 JPEGs deleted
2026-05-08T16:17:20.865438Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 2.6MB (1.9x), 24 JPEGs deleted
2026-05-08T16:18:00.061735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:00.521894Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:07.812674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:18:08.597501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
tip: install a starter bundle of pipes:
screenpipe install https://screenpi.pe/start.json
2026-05-08T16:21:52.302107Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:21.483331Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames
2026-05-08T16:22:23.504019Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 2.8MB → 0.4MB (7.3x), 17 JPEGs deleted
2026-05-08T16:22:27.609680Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.5MB → 2.0MB (2.2x), 25 JPEGs deleted
2026-05-08T16:22:44.760229Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:22:58.309314Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:23.278358Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:28.711448Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:23:31.606725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:24:47.675344Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:24:47.969319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=visual_change)
2026-05-08T16:24:52.596757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:25:10.506206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:25:10.844330Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
tip: sign in for higher AI quotas + cloud sync:
screenpipe login
2026-05-08T16:26:00.024658Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=7579307838644216966, trigger=click)
2026-05-08T16:26:01.075501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=7579307838644216966, trigger=click)
2026-05-08T16:27:27.743597Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 76 eligible frames
2026-05-08T16:27:29.347787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 26 frames, 4.3MB → 0.3MB (16.4x), 26 JPEGs deleted
2026-05-08T16:27:33.917512Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 48 frames, 9.1MB → 3.8MB (2.4x), 48 JPEGs deleted
2026-05-08T16:28:35.614068Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:28:38.078614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:52.218743Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:28:58.626947Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:29:30.541172Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:45.788732Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:29:51.148742Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:06.437139Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:16.208028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:27.080114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:30.643366Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:30:34.280383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:34.765290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:30:37.103183Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
https://screenpi.pe
2026-05-08T16:31:41.123665Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:31:46.284285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:49.513105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:31:51.541319Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:27.796318Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:34.687689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames
2026-05-08T16:32:35.458896Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.6x), 10 JPEGs deleted
2026-05-08T16:32:36.622164Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.1MB → 0.6MB (3.4x), 12 JPEGs deleted
2026-05-08T16:32:41.290383Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:32:45.046681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:46.436402Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:47.862586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:48.312606Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:32:49.821556Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:00.702282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=visual_change)
2026-05-08T16:33:05.923516Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:06.342559Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:33:43.909404Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2045079508751645345, trigger=click)
2026-05-08T16:34:29.466807Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3175715562603377888, trigger=visual_change)
2026-05-08T16:34:41.161989Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6337657672782761712, trigger=click)
2026-05-08T16:34:42.969057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3175715562603377888, trigger=click)
2026-05-08T16:35:16.301466Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=click)
tip: wire screenpipe into claude with one command:
claude mcp add screenpipe -- npx -y screenpipe-mcp
then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity
2026-05-08T16:36:08.902473Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:09.349960Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-8710375623998314330, trigger=click)
2026-05-08T16:36:39.712526Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:42.078776Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:49.043460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2435399166852945830, trigger=visual_change)
2026-05-08T16:36:58.316674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2435399166852945830, trigger=click)
2026-05-08T16:37:37.528078Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 38 eligible frames
2026-05-08T16:37:38.928637Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.5MB → 0.3MB (9.9x), 15 JPEGs deleted
2026-05-08T16:37:42.138895Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.3MB → 2.0MB (2.1x), 21 JPEGs deleted
2026-05-08T16:38:05.259643Z INFO screenpipe_...
|
11284
|
NULL
|
NULL
|
NULL
|
|
7082
|
318
|
9
|
2026-05-08T08:14:18.632075+00:00
|
/Users/lukas/.screenpipe/data/data/2026-05-08/1778 /Users/lukas/.screenpipe/data/data/2026-05-08/1778228058632_m2.jpg...
|
iTerm2
|
screenpipe"
|
1
|
NULL
|
monitor_2
|
NULL
|
NULL
|
NULL
|
NULL
|
2026-05-07T19:49:57.586646Z INFO screenpipe_engin 2026-05-07T19:49:57.586646Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:49:58.160394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:49:58.333248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:00.653111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:00.788775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:01.757003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:01.850289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:09.824461Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
[URL_WITH_CREDENTIALS] record --disable-audio --ignored-windows "Boosteroid"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-08T09:25:44.404966Z INFO screenpipe_eng...
|
[{"role":"AXTextArea","text [{"role":"AXTextArea","text":"2026-05-07T19:49:57.586646Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:49:58.160394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:49:58.333248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:00.653111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:00.788775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:01.757003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:01.850289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:09.824461Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T19:51:43.978817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:51:54.289204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:51:54.534513Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:51:55.912398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:52:07.427464Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:52:09.914610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:52:13.999305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:53:08.137188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3408391724781151, trigger=click)\n2026-05-07T19:53:27.421048Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:53:30.806727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:53:55.298484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:54:02.229266Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:54:02.570998Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:54:10.661598Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-07T19:54:11.829433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.7MB → 0.5MB (5.9x), 13 JPEGs deleted\n2026-05-07T19:54:12.906285Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.8MB (2.3x), 10 JPEGs deleted\n2026-05-07T19:54:15.030478Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T19:59:12.939770Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T19:59:14.064266Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.8MB (2.8x), 11 JPEGs deleted\n2026-05-07T19:59:15.028689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.7MB (2.7x), 10 JPEGs deleted\n2026-05-07T19:59:19.676527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=click)\n2026-05-07T19:59:20.298073Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=visual_change)\n2026-05-07T19:59:21.048802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5804206422380105340, trigger=click)\n2026-05-07T19:59:47.204531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:59:47.386007Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:59:49.129611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T19:59:57.544434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:06.938913Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:07.019843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:17.416687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:17.621334Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:22.202076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:22.302504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:22.987921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:23.300585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3534927383007615310, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T20:00:45.503937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:45.692395Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:02.738618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T20:02:10.601351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:16.908580Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:17.153655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:33.165320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:33.357830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:34.707461Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:34.880760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:35.941695Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:36.002767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:36.694797Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:02:39.767667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:02:40.243974Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:40.447707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:41.474533Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:41.641646Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:45.241150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:45.344303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:46.427245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:46.673424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:51.360985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:51.438210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:04:15.122581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 67 eligible frames\n2026-05-07T20:04:17.266857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 6.8MB → 0.4MB (16.5x), 31 JPEGs deleted\n2026-05-07T20:04:19.692224Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.6MB → 1.8MB (3.7x), 34 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T20:09:19.730149Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-07T20:09:20.868870Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.4MB (5.0x), 10 JPEGs deleted\n2026-05-07T20:09:21.872731Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.3MB → 0.5MB (4.5x), 12 JPEGs deleted\n2026-05-07T20:10:22.481288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:10:22.724929Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T20:10:33.403069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:16.881525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:17.206290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:25.414806Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:26.342065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:12:00.633251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:12:00.764751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:14:21.899602Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T20:14:22.842168Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.5MB (4.6x), 11 JPEGs deleted\n2026-05-07T20:14:23.833238Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.8MB → 0.7MB (2.6x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T20:16:16.015969Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:16:16.262718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:16:30.386104Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:16:30.594387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:23.837266Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:23.988598Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:58.290499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:58.550857Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:18:22.484670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:19:23.913857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T20:19:24.908787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-07T20:19:25.659631Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (6.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T20:22:08.888954Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:22:09.031478Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:23:15.387842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:21.333524Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:25.728554Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T20:24:27.036433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-07T20:24:28.328187Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.3MB → 0.3MB (3.9x), 8 JPEGs deleted\n2026-05-07T20:24:37.328678Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:43.353544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:24:55.872936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:58.540875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T20:25:35.867578Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=visual_change)\n2026-05-07T20:26:42.340931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:29:13.971772Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:29:16.626054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=visual_change)\n2026-05-07T20:29:18.382762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=click)\n2026-05-07T20:29:19.388168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5804206422380105340, trigger=click)\n2026-05-07T20:29:19.470946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=click)\n2026-05-07T20:29:28.365413Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T20:29:29.189708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 2.0MB → 0.4MB (5.2x), 9 JPEGs deleted\n2026-05-07T20:29:29.981681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.3MB → 0.4MB (3.6x), 8 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T20:30:27.218155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-145836613520700435, trigger=visual_change)\n2026-05-07T20:30:33.315754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:30:33.648193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6936887013967671323, trigger=click)\n2026-05-07T20:30:36.262915Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:30:54.441609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:31:08.468287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:08.761735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:09.476804Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:09.743553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:21.987184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:22.172149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:24.558168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:24.698858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:31.444495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=visual_change)\n2026-05-07T20:31:34.876401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:34.956738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:57.136853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:57.238905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:01.595439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:01.965131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:04.293555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:04.374867Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:07.450792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:07.657577Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:09.195028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:09.394977Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:29.710963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:32:29.885984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:32:45.920243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T20:33:06.673430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:34:29.989171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T20:34:30.879482Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.4MB → 0.4MB (6.5x), 11 JPEGs deleted\n2026-05-07T20:34:31.909326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.5MB (4.6x), 13 JPEGs deleted\n2026-05-07T20:35:12.105375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:35:12.236548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T20:35:26.184503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:35:26.248722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:36:26.954900Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:36:27.559499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:36:38.156973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=visual_change)\n2026-05-07T20:36:47.814748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:47.970282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:50.338177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:50.459862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:53.207924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:37:08.617136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:10.552854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:10.715161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:11.450415Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:11.568870Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:15.893763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:16.129140Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:37.989437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:38.224177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:40.686576Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:40.774090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:43.769203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:43.874600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:45.392921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:45.578182Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:46.161501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:46.405550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:49.676454Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:49.752090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:38:25.338967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:39:31.941232Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T20:39:33.328005Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.5MB → 0.7MB (3.5x), 12 JPEGs deleted\n2026-05-07T20:39:35.006471Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.0MB → 1.2MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T20:40:39.180298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:40:39.383232Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:40:40.832153Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n2026-05-07T20:40:53.463842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6322393822977483, trigger=click)\n2026-05-07T20:40:53.767986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:44:35.042198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T20:44:35.901229Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.6x), 10 JPEGs deleted\n2026-05-07T20:44:37.057277Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.8MB (2.3x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T20:47:14.469565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:47:14.659492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:49:37.082051Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 51 eligible frames\n2026-05-07T20:49:38.725072Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.6MB → 0.5MB (9.3x), 21 JPEGs deleted\n2026-05-07T20:49:41.540139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 5.1MB → 2.2MB (2.4x), 28 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T20:54:41.579472Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T20:54:42.613188Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 2.0MB → 0.4MB (5.0x), 9 JPEGs deleted\n2026-05-07T20:54:43.513502Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.5MB (4.1x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T20:58:07.310317Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:58:07.435000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:58:08.835660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:58:09.276486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:59:43.595276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T20:59:44.636647Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 2.0MB → 0.4MB (5.4x), 9 JPEGs deleted\n2026-05-07T20:59:45.590852Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.4MB (5.2x), 10 JPEGs deleted\n2026-05-07T21:00:16.436168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T21:00:48.741587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:00:55.766541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:01:01.987730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:01:19.657174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:04:45.665545Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-07T21:04:46.555243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.4MB → 0.4MB (6.5x), 11 JPEGs deleted\n2026-05-07T21:04:47.505518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.3MB (6.3x), 11 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T21:07:59.390425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:08:02.049042Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:08:58.406336Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3190010697038351257, trigger=click)\n2026-05-07T21:08:58.638209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3190010697038351257, trigger=click)\n2026-05-07T21:09:33.105308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:09:47.541287Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T21:09:48.491343Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.6x), 10 JPEGs deleted\n2026-05-07T21:09:49.574479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.4MB (4.4x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T21:11:18.711785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:11:43.731627Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=click)\n2026-05-07T21:11:58.569054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=click)\n2026-05-07T21:14:49.597611Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-07T21:14:50.698785Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 3.1MB → 0.4MB (8.0x), 14 JPEGs deleted\n2026-05-07T21:14:53.637486Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.5MB → 0.6MB (4.4x), 13 JPEGs deleted\n2026-05-07T21:15:02.521080Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6936887013967671323, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T21:15:56.220866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:16:19.271233Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:17:24.638614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:17:30.785805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:17:33.819916Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:18:40.291660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:18:44.647424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:18:44.850725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:18:46.523321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:18:49.556444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:19:53.705827Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-07T21:19:55.056907Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.6MB → 0.9MB (4.0x), 20 JPEGs deleted\n2026-05-07T21:19:56.759790Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.9MB → 1.1MB (3.4x), 20 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T21:20:29.459260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:20:41.532773Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:20:57.170225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:21:07.150037Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:21:07.320528Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:21:27.422746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:22:21.936188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:22:22.033584Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:22:50.292905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:16.735984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:16.914206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:18.420221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:18.695513Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:28.410976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:36.882207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:37.074891Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:48.366576Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:48.495008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:49.547721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:24:01.423031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:24:04.466413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:24:56.787200Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T21:24:57.817202Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 3.1MB → 0.4MB (7.7x), 14 JPEGs deleted\n2026-05-07T21:24:59.081061Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.3MB → 0.7MB (3.3x), 12 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T21:27:02.818198Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:27:05.774711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:28:30.450527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:29:59.102962Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-07T21:29:59.987011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.6x), 10 JPEGs deleted\n2026-05-07T21:30:01.159682Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 0.9MB (2.7x), 13 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T21:35:01.331399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T21:35:02.457282Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.4x), 10 JPEGs deleted\n2026-05-07T21:35:03.532280Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.8MB (2.1x), 8 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T21:39:18.435385Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T21:39:34.938546Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-07T21:40:03.554507Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T21:40:04.411131Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-07T21:40:05.319315Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.6MB (3.5x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T21:45:05.336676Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T21:45:06.184141Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (6.0x), 10 JPEGs deleted\n2026-05-07T21:45:06.960114Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T21:50:06.992344Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 18 eligible frames\n2026-05-07T21:50:07.821021Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.7MB → 0.4MB (4.6x), 8 JPEGs deleted\n2026-05-07T21:50:08.563068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.3MB (5.1x), 8 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T21:50:34.305285Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=182 elapsed=1.9089s\n2026-05-07T21:50:34.470706Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T21:50:34.479630Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-07T21:50:34.495040Z INFO sck_rs::stream_manager: stopped 1 persistent stream(s)\n2026-05-07T21:50:36.741433Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T21:50:37.714776Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\nzsh: terminated npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-08T09:25:44.404966Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-08T09:25:44.477216Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-08T09:25:45.851716Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-08T09:25:45.853302Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-08T09:25:45.853909Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-08T09:25:45.874540Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-08T09:25:45.874606Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-08T09:25:45.874891Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-08T09:25:45.874915Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-08T09:25:45.874789Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-08T09:25:45.874931Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-08T09:25:45.874854Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-08T09:25:45.877906Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-08T09:25:45.878202Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-08T09:25:45.878737Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-08T09:25:45.878843Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-08T09:25:45.878921Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-08T09:25:45.878997Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-08T09:25:45.879015Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n2026-05-08T09:25:45.881529Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-08T09:25:45.881961Z INFO screenpipe: starting UI event capture\n2026-05-08T09:25:45.888762Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-08T09:25:45.891286Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-08T09:25:45.896583Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-08T09:25:45.913159Z INFO screenpipe_engine::ui_recorder: UI recording session started: 03da4156-9bc1-4c59-86f8-3b937ccacca2\n2026-05-08T09:25:45.913483Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-08T09:25:45.913512Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-07 06:25:45.913511 UTC to 2026-05-08 06:25:45.913511 UTC)\n2026-05-08T09:25:45.914574Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-08T09:25:45.923208Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-08T09:25:45.927056Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-08T09:25:46.310992Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-08T09:25:46.311039Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-08T09:25:46.311076Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-08T09:25:46.472936Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-08T09:25:46.472968Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-08T09:25:46.472981Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-08T09:25:46.472989Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-08T09:25:46.473017Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-08T09:25:47.579143Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T09:25:47.807876Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T09:25:49.233996Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=6262 elapsed=3.319831958s\n2026-05-08T09:25:49.259779Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 6262 frame entries, coverage from 2026-05-07 06:25:45.913511 UTC\n2026-05-08T09:25:49.287128Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=3.372462875s\n2026-05-08T09:25:49.298656Z WARN sqlx::query: summary=\"BEGIN IMMEDIATE\" db.statement=\"\" rows_affected=0 rows_returned=0 elapsed=2.291237167s\n2026-05-08T09:25:49.308025Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=6417, dur=1635ms\n2026-05-08T09:25:49.316412Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=6418, dur=1452ms\n2026-05-08T09:25:53.067387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1292138115173956966, trigger=visual_change)\n2026-05-08T09:26:03.550801Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-08T09:26:46.180906Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 4 eligible frames\n2026-05-08T09:26:46.524607Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 1 frames, 0.1MB → 0.1MB (0.9x), 1 JPEGs deleted\n2026-05-08T09:26:46.923032Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 1 frames, 0.2MB → 0.2MB (0.8x), 1 JPEGs deleted\n2026-05-08T09:28:41.550335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:28:59.126718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:28:59.305470Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:00.089887Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:00.462881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:03.317651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:03.473148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:10.550484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:10.930599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:40.477951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:29:40.623647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:29:55.685106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:27.852727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:28.074599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:39.391415Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:39.580155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:42.593858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:42.780703Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T09:31:03.663088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1118401968181291277, trigger=click)\n2026-05-08T09:31:13.336256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:16.300718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:19.862155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:20.023592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:31.559009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:31.722269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:42.709962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:47.186649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n2026-05-08T09:31:54.123656Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1118401968181291277, trigger=click)\n2026-05-08T09:31:54.497342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1118401968181291277, trigger=click)\n2026-05-08T09:32:04.168621Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:32:04.407757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:32:38.034056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:40.275982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:45.192285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:45.469912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:46.259114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:46.446908Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:51.411943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:33:05.930232Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:06.060313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:07.483162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:07.683843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:10.871126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:11.052797Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:11.746749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:11.927251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:15.060268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=visual_change)\n2026-05-08T09:33:21.074673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=visual_change)\n2026-05-08T09:33:21.530338Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:23.852887Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=visual_change)\n2026-05-08T09:33:44.459060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:44.638920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:45.598747Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:50.861178Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:51.057271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:51.739888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:54.476956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:54.648342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:55.662035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:55.867287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:34:12.210475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:34:12.402186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:34:26.804614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=visual_change)\n2026-05-08T09:34:41.958095Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=visual_change)\n2026-05-08T09:34:44.939587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=visual_change)\n2026-05-08T09:34:47.414039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T09:35:46.200311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:35:46.364228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:35:50.031576Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:35:50.249582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:36:41.230540Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:41.413677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:44.820204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:45.035980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:47.754237Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T09:36:49.283543Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 3.0MB → 1.2MB (2.5x), 10 JPEGs deleted\n2026-05-08T09:36:50.755035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:51.069767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:51.094760Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.2MB → 1.1MB (2.0x), 11 JPEGs deleted\n2026-05-08T09:36:55.268465Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:55.437350Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:37:05.394712Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:05.551094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:08.103873Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:08.361208Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:39.177609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:37:39.328675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:03.042687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:04.473095Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:04.683357Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:06.224659Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:06.378357Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:07.871753Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:08.025847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:09.033460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:09.327866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:11.337027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:11.491353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:13.728071Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:14.040779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:16.504104Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:38:22.538341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:22.728456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:38:55.556472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:55.711419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:57.264840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:57.539647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:01.084205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:01.268210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:15.271618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:15.439734Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:32.758641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n2026-05-08T09:39:35.793169Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T09:41:28.068167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:41:31.045305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:41:36.389986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:41:36.561677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:41:41.341428Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n2026-05-08T09:41:51.115360Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-08T09:41:51.172608Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:41:51.332434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:41:53.382444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 8.7MB → 2.7MB (3.2x), 25 JPEGs deleted\n2026-05-08T09:41:56.048962Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 6.4MB → 2.8MB (2.3x), 32 JPEGs deleted\n2026-05-08T09:41:56.974629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:41:57.081674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:01.408309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:01.576951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:05.650150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:42:08.461352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:13.504196Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:15.422832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:15.608642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:22.013550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:22.220620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:30.158861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:30.329117Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:36.236287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:37.625816Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:37.866373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:44.520188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:44.674683Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:45.556893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:45.896079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:53.124042Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:54.984377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:55.678582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:58.707317Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:58.853212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:04.132975Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:04.293225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:05.097617Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:05.358460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:11.374737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:19.175331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:19.355570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:37.353769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:53.937896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:44:00.384577Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:44:00.510160Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:44:05.272446Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:45:03.466845Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-08T09:45:09.166576Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-08T09:45:09.174536Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Firefox, title=None)\n2026-05-08T09:45:09.185270Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(3), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T09:45:52.983194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:45:55.814561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:46:22.910823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1554366943929738047, trigger=visual_change)\n2026-05-08T09:46:25.877422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1554366943929738047, trigger=visual_change)\n2026-05-08T09:46:50.115047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3936769011367173450, trigger=visual_change)\n2026-05-08T09:46:56.405973Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-08T09:46:58.402681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.9MB → 2.1MB (2.3x), 18 JPEGs deleted\n2026-05-08T09:47:02.005336Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 1.8MB (2.6x), 24 JPEGs deleted\n2026-05-08T09:48:49.624034Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4935500254712719031, trigger=visual_change)\n2026-05-08T09:48:55.234042Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4935500254712719031, trigger=visual_change)\n2026-05-08T09:49:31.027241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4903930204626697518, trigger=visual_change)\n2026-05-08T09:49:33.574661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4903930204626697518, trigger=visual_change)\n2026-05-08T09:49:40.985216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1479333644127595753, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T09:51:31.195866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:51:34.187130Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:52:02.058877Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T09:52:02.895659Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.2x), 11 JPEGs deleted\n2026-05-08T09:52:05.123225Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.4MB → 1.1MB (2.2x), 12 JPEGs deleted\n2026-05-08T09:52:28.524613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:32.199020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:34.981545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:38.041928Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:53.228575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:55:34.615659Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:55:39.135543Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:55:42.100626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T09:56:06.348421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:56:19.778937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:20.146987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:22.327374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:56:22.684320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:23.354118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:31.130999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:56:36.848267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:57:05.138380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T09:57:08.978627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 5.2MB → 2.2MB (2.3x), 34 JPEGs deleted\n2026-05-08T09:57:12.061590Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.7MB → 1.8MB (2.6x), 25 JPEGs deleted\n2026-05-08T09:57:20.857350Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T10:02:12.074210Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-08T10:02:14.591669Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.6MB → 1.6MB (2.8x), 27 JPEGs deleted\n2026-05-08T10:02:18.591453Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.9MB → 2.1MB (3.2x), 37 JPEGs deleted\n2026-05-08T10:02:38.310288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:02:41.512754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:02:55.427495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:02:58.467205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T10:05:45.153487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:06:00.209915Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:06:06.271869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:07:00.926117Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:07:04.535399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:07:18.685226Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-08T10:07:20.049081Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.7MB (2.3x), 10 JPEGs deleted\n2026-05-08T10:07:21.768980Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.6MB → 0.9MB (3.0x), 14 JPEGs deleted\n2026-05-08T10:09:59.647178Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:02.691057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:05.910137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:18.904787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:22.032045Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T10:10:22.364085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T10:10:34.764663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T10:10:52.467119Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:01.601149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:01.997105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:07.533586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:07.750007Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:09.430891Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:09.668098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:12:22.241069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T10:12:23.316021Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.6MB (3.0x), 10 JPEGs deleted\n2026-05-08T10:12:24.302139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.3MB (6.2x), 10 JPEGs deleted\n2026-05-08T10:14:27.950899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:14:30.953147Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:15:40.699455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T10:15:53.068152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:16:06.077381Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:09.164173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:12.238475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:27.434756Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:30.598435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:54.602846Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2798045893656121689, trigger=visual_change)\n2026-05-08T10:17:24.360060Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T10:17:26.451985Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.7MB (2.3x), 9 JPEGs deleted\n2026-05-08T10:17:27.393539Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.3MB (5.5x), 9 JPEGs deleted\n2026-05-08T10:17:35.884136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:44.858247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:47.791681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:51.542202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:53.850524Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:56.976902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:18:00.189453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:18:56.810401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:18:58.426017Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:14.105702Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:19:15.906287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:19:16.196966Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:19:23.138718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:50.564469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:53.695532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:59.646538Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:02.690871Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:05.544781Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:08.886578Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:11.711013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:42.205501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T10:20:44.945356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:56.980297Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:21:00.075928Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:21:27.359488Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:21:51.375575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:22:09.590415Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:22:27.856377Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-08T10:22:29.975537Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.9MB (2.2x), 12 JPEGs deleted\n2026-05-08T10:22:32.193955Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.3MB → 0.8MB (2.9x), 12 JPEGs deleted\n2026-05-08T10:22:38.104118Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=3, grace=300s)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T10:27:32.223386Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-08T10:27:33.963231Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.8MB → 1.5MB (2.5x), 22 JPEGs deleted\n2026-05-08T10:27:34.965976Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.9MB → 0.6MB (4.5x), 15 JPEGs deleted\n2026-05-08T10:27:42.003060Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=3)\n2026-05-08T10:27:42.030942Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=3)\n2026-05-08T10:27:42.031284Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T10:32:34.993481Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-08T10:32:36.911427Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted\n2026-05-08T10:32:38.348968Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.3MB → 0.7MB (4.5x), 17 JPEGs deleted\n2026-05-08T10:32:43.504629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2480865208693484334, trigger=click)\n2026-05-08T10:32:44.808086Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2691869413603873448, trigger=visual_change)\n2026-05-08T10:32:57.344768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4582922036696453369, trigger=visual_change)\n2026-05-08T10:33:14.286615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:17.397061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:20.440236Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:23.565667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:26.619325Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:44.642578Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:34:18.658764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:34:19.570478Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:34:37.759610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:34:46.191373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:34:46.347571Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:35:05.447987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:08.364141Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:20.530635Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:26.518850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:42.335475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T10:36:05.761109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:36:51.134718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:37:03.018938Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:03.131018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:19.986446Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:20.150039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:38.485989Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 49 eligible frames\n2026-05-08T10:37:40.088773Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 2.5MB → 0.5MB (5.3x), 25 JPEGs deleted\n2026-05-08T10:37:41.449341Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.5MB → 0.7MB (6.1x), 22 JPEGs deleted\n2026-05-08T10:37:53.686403Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:53.911534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:55.547504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:55.698502Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:40:03.803000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:40:05.329370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:40:12.277953Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:40:30.238530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n2026-05-08T10:40:33.253643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n2026-05-08T10:40:39.446188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T10:42:41.487064Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-08T10:42:43.685646Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.2MB → 0.8MB (3.8x), 21 JPEGs deleted\n2026-05-08T10:42:45.090380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.1MB → 0.4MB (9.8x), 20 JPEGs deleted\n2026-05-08T10:44:51.948235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T10:47:45.477420Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-08T10:47:46.908374Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.6MB → 1.0MB (2.4x), 16 JPEGs deleted\n2026-05-08T10:47:47.889915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.2MB → 0.7MB (3.1x), 11 JPEGs deleted\n2026-05-08T10:48:44.989826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:45.457011Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:46.241871Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:52.767770Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:52.931983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:49:13.334842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:49:35.877896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:49:40.287642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:49:40.567109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:18.247561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:18.445354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:38.564808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:38.721104Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T10:52:14.939893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:52:47.921981Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T10:52:48.773277Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.2x), 11 JPEGs deleted\n2026-05-08T10:52:49.740827Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.2MB → 0.6MB (3.5x), 11 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T10:57:49.816978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T10:57:50.799387Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T10:57:51.791418Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.6MB (3.0x), 9 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T11:02:26.291891Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T11:02:40.815903Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T11:02:51.816734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T11:02:52.570373Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.2MB → 0.2MB (5.3x), 8 JPEGs deleted\n2026-05-08T11:02:53.516401Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.6MB (2.8x), 9 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T11:07:53.805294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T11:07:54.570465Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T11:07:55.385733Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.2x), 10 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T11:11:26.940944Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T11:11:26.961878Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-08T11:11:27.383887Z INFO sck_rs::stream_manager: stopped 1 persistent stream(s)\n2026-05-08T11:11:28.192185Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T11:11:28.644917Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T11:11:37.769445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:38.124839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:48.451041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:48.668718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:57.515343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T11:12:06.448613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T11:12:30.657285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-988033380551830529, trigger=click)\n2026-05-08T11:12:31.365542Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-988033380551830529, trigger=click)\n2026-05-08T11:12:31.545510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-988033380551830529, trigger=click)\n2026-05-08T11:12:55.538669Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T11:12:56.361298Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.9x), 9 JPEGs deleted\n2026-05-08T11:12:57.108963Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.4MB → 0.3MB (5.1x), 8 JPEGs deleted\n2026-05-08T11:13:00.158739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5913295812195877774, trigger=visual_change)\n2026-05-08T11:13:05.550195Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:13:05.651938Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:13:10.744168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:13:10.819972Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:14:12.779888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6316162581802160030, trigger=click)","depth":4,"on_screen":true,"value":"2026-05-07T19:49:57.586646Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:49:58.160394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:49:58.333248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:00.653111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:00.788775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:01.757003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:01.850289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:50:09.824461Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T19:51:43.978817Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:51:54.289204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:51:54.534513Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:51:55.912398Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:52:07.427464Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:52:09.914610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:52:13.999305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-07T19:53:08.137188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3408391724781151, trigger=click)\n2026-05-07T19:53:27.421048Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:53:30.806727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-07T19:53:55.298484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:54:02.229266Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:54:02.570998Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:54:10.661598Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-07T19:54:11.829433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.7MB → 0.5MB (5.9x), 13 JPEGs deleted\n2026-05-07T19:54:12.906285Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.8MB (2.3x), 10 JPEGs deleted\n2026-05-07T19:54:15.030478Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T19:59:12.939770Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T19:59:14.064266Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.8MB (2.8x), 11 JPEGs deleted\n2026-05-07T19:59:15.028689Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.7MB (2.7x), 10 JPEGs deleted\n2026-05-07T19:59:19.676527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=click)\n2026-05-07T19:59:20.298073Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=visual_change)\n2026-05-07T19:59:21.048802Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5804206422380105340, trigger=click)\n2026-05-07T19:59:47.204531Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:59:47.386007Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T19:59:49.129611Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T19:59:57.544434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:06.938913Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:07.019843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:17.416687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:17.621334Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:22.202076Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:22.302504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:22.987921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3534927383007615310, trigger=click)\n2026-05-07T20:00:23.300585Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3534927383007615310, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T20:00:45.503937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:00:45.692395Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:02.738618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T20:02:10.601351Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:16.908580Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:17.153655Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:02:33.165320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:33.357830Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:34.707461Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:34.880760Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:35.941695Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:36.002767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:36.694797Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:02:39.767667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:02:40.243974Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:40.447707Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:41.474533Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:41.641646Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:45.241150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:45.344303Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:46.427245Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:46.673424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:51.360985Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:02:51.438210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:04:15.122581Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 67 eligible frames\n2026-05-07T20:04:17.266857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 31 frames, 6.8MB → 0.4MB (16.5x), 31 JPEGs deleted\n2026-05-07T20:04:19.692224Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 6.6MB → 1.8MB (3.7x), 34 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T20:09:19.730149Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-07T20:09:20.868870Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.4MB (5.0x), 10 JPEGs deleted\n2026-05-07T20:09:21.872731Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.3MB → 0.5MB (4.5x), 12 JPEGs deleted\n2026-05-07T20:10:22.481288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:10:22.724929Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T20:10:33.403069Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:16.881525Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:17.206290Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:25.414806Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:11:26.342065Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:12:00.633251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:12:00.764751Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:14:21.899602Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 23 eligible frames\n2026-05-07T20:14:22.842168Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.3MB → 0.5MB (4.6x), 11 JPEGs deleted\n2026-05-07T20:14:23.833238Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.8MB → 0.7MB (2.6x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T20:16:16.015969Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:16:16.262718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:16:30.386104Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:16:30.594387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:23.837266Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:23.988598Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:58.290499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:17:58.550857Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:18:22.484670Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:19:23.913857Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T20:19:24.908787Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-07T20:19:25.659631Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.6MB → 0.2MB (6.7x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T20:22:08.888954Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:22:09.031478Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:23:15.387842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:21.333524Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:25.728554Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T20:24:27.036433Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-07T20:24:28.328187Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.3MB → 0.3MB (3.9x), 8 JPEGs deleted\n2026-05-07T20:24:37.328678Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:43.353544Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n2026-05-07T20:24:55.872936Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=click)\n2026-05-07T20:24:58.540875Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-9059054231720352226, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T20:25:35.867578Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=visual_change)\n2026-05-07T20:26:42.340931Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:29:13.971772Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:29:16.626054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=visual_change)\n2026-05-07T20:29:18.382762Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=click)\n2026-05-07T20:29:19.388168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5804206422380105340, trigger=click)\n2026-05-07T20:29:19.470946Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5804206422380105340, trigger=click)\n2026-05-07T20:29:28.365413Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-07T20:29:29.189708Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 2.0MB → 0.4MB (5.2x), 9 JPEGs deleted\n2026-05-07T20:29:29.981681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.3MB → 0.4MB (3.6x), 8 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T20:30:27.218155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-145836613520700435, trigger=visual_change)\n2026-05-07T20:30:33.315754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:30:33.648193Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6936887013967671323, trigger=click)\n2026-05-07T20:30:36.262915Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:30:54.441609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=visual_change)\n2026-05-07T20:31:08.468287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:08.761735Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:09.476804Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:09.743553Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:21.987184Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:22.172149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:24.558168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:24.698858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:31.444495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=visual_change)\n2026-05-07T20:31:34.876401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:34.956738Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:57.136853Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:31:57.238905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:01.595439Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:01.965131Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:04.293555Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:04.374867Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:07.450792Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:07.657577Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:09.195028Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:09.394977Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-247279566672962711, trigger=click)\n2026-05-07T20:32:29.710963Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:32:29.885984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:32:45.920243Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T20:33:06.673430Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:34:29.989171Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-07T20:34:30.879482Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.4MB → 0.4MB (6.5x), 11 JPEGs deleted\n2026-05-07T20:34:31.909326Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.2MB → 0.5MB (4.6x), 13 JPEGs deleted\n2026-05-07T20:35:12.105375Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:35:12.236548Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T20:35:26.184503Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:35:26.248722Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:36:26.954900Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:36:27.559499Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:36:38.156973Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=visual_change)\n2026-05-07T20:36:47.814748Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:47.970282Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:50.338177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:50.459862Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:36:53.207924Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:37:08.617136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:10.552854Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:10.715161Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:11.450415Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:11.568870Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:15.893763Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:16.129140Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-07T20:37:37.989437Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:38.224177Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:40.686576Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:40.774090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:43.769203Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:43.874600Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:45.392921Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:45.578182Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:46.161501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:46.405550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:49.676454Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:37:49.752090Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T20:38:25.338967Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3981626442988875089, trigger=click)\n2026-05-07T20:39:31.941232Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 30 eligible frames\n2026-05-07T20:39:33.328005Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.5MB → 0.7MB (3.5x), 12 JPEGs deleted\n2026-05-07T20:39:35.006471Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 3.0MB → 1.2MB (2.4x), 16 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T20:40:39.180298Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:40:39.383232Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:40:40.832153Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n2026-05-07T20:40:53.463842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6322393822977483, trigger=click)\n2026-05-07T20:40:53.767986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:44:35.042198Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T20:44:35.901229Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.6x), 10 JPEGs deleted\n2026-05-07T20:44:37.057277Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.8MB (2.3x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T20:47:14.469565Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:47:14.659492Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:49:37.082051Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 51 eligible frames\n2026-05-07T20:49:38.725072Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 4.6MB → 0.5MB (9.3x), 21 JPEGs deleted\n2026-05-07T20:49:41.540139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 28 frames, 5.1MB → 2.2MB (2.4x), 28 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T20:54:41.579472Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T20:54:42.613188Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 2.0MB → 0.4MB (5.0x), 9 JPEGs deleted\n2026-05-07T20:54:43.513502Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.5MB (4.1x), 10 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T20:58:07.310317Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:58:07.435000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:58:08.835660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:58:09.276486Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T20:59:43.595276Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T20:59:44.636647Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 2.0MB → 0.4MB (5.4x), 9 JPEGs deleted\n2026-05-07T20:59:45.590852Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.4MB (5.2x), 10 JPEGs deleted\n2026-05-07T21:00:16.436168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T21:00:48.741587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:00:55.766541Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:01:01.987730Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:01:19.657174Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:04:45.665545Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-07T21:04:46.555243Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.4MB → 0.4MB (6.5x), 11 JPEGs deleted\n2026-05-07T21:04:47.505518Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.1MB → 0.3MB (6.3x), 11 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T21:07:59.390425Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:08:02.049042Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:08:58.406336Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3190010697038351257, trigger=click)\n2026-05-07T21:08:58.638209Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3190010697038351257, trigger=click)\n2026-05-07T21:09:33.105308Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:09:47.541287Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-07T21:09:48.491343Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.6x), 10 JPEGs deleted\n2026-05-07T21:09:49.574479Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.4MB (4.4x), 9 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T21:11:18.711785Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-07T21:11:43.731627Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=click)\n2026-05-07T21:11:58.569054Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-6936887013967671323, trigger=click)\n2026-05-07T21:14:49.597611Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-07T21:14:50.698785Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 3.1MB → 0.4MB (8.0x), 14 JPEGs deleted\n2026-05-07T21:14:53.637486Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.5MB → 0.6MB (4.4x), 13 JPEGs deleted\n2026-05-07T21:15:02.521080Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-6936887013967671323, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T21:15:56.220866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:16:19.271233Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:17:24.638614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:17:30.785805Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:17:33.819916Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:18:40.291660Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:18:44.647424Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:18:44.850725Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:18:46.523321Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:18:49.556444Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:19:53.705827Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 42 eligible frames\n2026-05-07T21:19:55.056907Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.6MB → 0.9MB (4.0x), 20 JPEGs deleted\n2026-05-07T21:19:56.759790Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 3.9MB → 1.1MB (3.4x), 20 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T21:20:29.459260Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:20:41.532773Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:20:57.170225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:21:07.150037Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:21:07.320528Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:21:27.422746Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=visual_change)\n2026-05-07T21:22:21.936188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:22:22.033584Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=6913338268963121281, trigger=click)\n2026-05-07T21:22:50.292905Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:16.735984Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:16.914206Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:18.420221Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:18.695513Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:28.410976Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:36.882207Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:37.074891Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:48.366576Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:48.495008Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-07T21:23:49.547721Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:24:01.423031Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:24:04.466413Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:24:56.787200Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 28 eligible frames\n2026-05-07T21:24:57.817202Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 3.1MB → 0.4MB (7.7x), 14 JPEGs deleted\n2026-05-07T21:24:59.081061Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.3MB → 0.7MB (3.3x), 12 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T21:27:02.818198Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:27:05.774711Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:28:30.450527Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=visual_change)\n2026-05-07T21:29:59.102962Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-07T21:29:59.987011Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.6x), 10 JPEGs deleted\n2026-05-07T21:30:01.159682Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 13 frames, 2.6MB → 0.9MB (2.7x), 13 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T21:35:01.331399Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-07T21:35:02.457282Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.4x), 10 JPEGs deleted\n2026-05-07T21:35:03.532280Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.8MB (2.1x), 8 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-07T21:39:18.435385Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-07T21:39:34.938546Z INFO sck_rs::stream_manager: recreating stream for display 2 (resolution change)\n2026-05-07T21:40:03.554507Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T21:40:04.411131Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (5.7x), 10 JPEGs deleted\n2026-05-07T21:40:05.319315Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.6MB (3.5x), 10 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-07T21:45:05.336676Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-07T21:45:06.184141Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.2MB → 0.4MB (6.0x), 10 JPEGs deleted\n2026-05-07T21:45:06.960114Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 2.0MB → 0.3MB (6.4x), 10 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-07T21:50:06.992344Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 18 eligible frames\n2026-05-07T21:50:07.821021Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.7MB → 0.4MB (4.6x), 8 JPEGs deleted\n2026-05-07T21:50:08.563068Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.6MB → 0.3MB (5.1x), 8 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-07T21:50:34.305285Z WARN sqlx::query: summary=\"SELECT DISTINCT app_name, window_name, …\" db.statement=\"\\n\\nSELECT\\n DISTINCT app_name,\\n window_name,\\n browser_url\\nFROM\\n frames\\nWHERE\\n timestamp > datetime('now', '-30 seconds')\\n AND app_name IS NOT NULL\\n AND window_name IS NOT NULL\\n\" rows_affected=0 rows_returned=182 elapsed=1.9089s\n2026-05-07T21:50:34.470706Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-07T21:50:34.479630Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 1\n2026-05-07T21:50:34.495040Z INFO sck_rs::stream_manager: stopped 1 persistent stream(s)\n2026-05-07T21:50:36.741433Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-07T21:50:37.714776Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\nzsh: terminated npx screenpipe@latest record --disable-audio --ignored-windows \"Boosteroid\"\nlukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start\ndetected hardware tier: Mid\nwarning: parakeet is not supported on this platform, using whisper-tiny instead\n2026-05-08T09:25:44.404966Z INFO screenpipe_engine::auth_key: api auth: key resolved via secret store\nchecking permissions...\n screen recording: ok\n accessibility: ok\n2026-05-08T09:25:44.477216Z INFO screenpipe_screen::monitor::macos_version: Detected macOS version: 14.6\n2026-05-08T09:25:45.851716Z INFO screenpipe_engine::sleep_monitor: Starting macOS sleep/wake monitor\n2026-05-08T09:25:45.853302Z INFO screenpipe_engine::sleep_monitor: Screen lock/unlock observers registered (CFNotificationCenter)\n2026-05-08T09:25:45.853909Z INFO screenpipe_engine::sleep_monitor: Display reconfiguration watcher registered (CGDisplayRegisterReconfigurationCallback)\n2026-05-08T09:25:45.874540Z INFO screenpipe_engine::permission_monitor: permission monitor started screen=true mic=true accessibility=true keychain=true\n2026-05-08T09:25:45.874606Z INFO screenpipe: meeting detector enabled — independent of transcription mode\n2026-05-08T09:25:45.874891Z INFO screenpipe: API server listening on 127.0.0.1:3030 (localhost only)\n2026-05-08T09:25:45.874915Z INFO screenpipe: API auth enabled — run `screenpipe auth token` to view your key\n2026-05-08T09:25:45.874789Z INFO screenpipe_engine::power::manager: power manager started (poll interval: 10s)\n2026-05-08T09:25:45.874931Z INFO screenpipe_engine::vision_manager::manager: Starting VisionManager\n2026-05-08T09:25:45.874854Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction worker started (min_age=600s, poll=300s)\n2026-05-08T09:25:45.877906Z INFO screenpipe_core::pipes: loaded pipe: day-recap\n2026-05-08T09:25:45.878202Z INFO screenpipe_core::pipes: loaded pipe: standup-update\n2026-05-08T09:25:45.878737Z INFO screenpipe_core::pipes: loaded pipe: ai-habits\n2026-05-08T09:25:45.878843Z INFO screenpipe_core::pipes: loaded pipe: time-breakdown\n2026-05-08T09:25:45.878921Z INFO screenpipe_core::pipes: loaded pipe: video-export\n2026-05-08T09:25:45.878997Z INFO screenpipe_core::pipes: loaded pipe: meeting-summary\n2026-05-08T09:25:45.879015Z INFO screenpipe_core::pipes: loaded 6 pipes from \"/Users/lukas/.screenpipe/pipes\"\n\n\n\n _ \n __________________ ___ ____ ____ (_____ ___ \n / ___/ ___/ ___/ _ \\/ _ \\/ __ \\ / __ \\/ / __ \\/ _ \\\n (__ / /__/ / / __/ __/ / / / / /_/ / / /_/ / __/\n/____/\\___/_/ \\___/\\___/_/ /_/ / .___/_/ .___/\\___/ \n /_/ /_/ \n\n\n\npower AI by everything you've seen, said or heard\nopen source | runs locally | developer friendly\n\n\n┌────────────────────────┬────────────────────────────────────┐\n│ setting │ value │\n├────────────────────────┼────────────────────────────────────┤\n│ audio chunk duration │ 30 seconds │\n│ port │ 3030 │\n│ audio disabled │ true │\n│ vision disabled │ false │\n│ pause on DRM content │ false │\n│ audio engine │ Parakeet │\n│ vad engine │ Silero │\n│ data directory │ /Users/lukas/.screenpipe │\n│ debug mode │ false │\n│ telemetry │ true │\n│ use pii removal │ true │\n│ use all monitors │ true │\n2026-05-08T09:25:45.881529Z INFO screenpipe_core::pipes: pipe scheduler started (generation 2)\n│ ignored windows │ [\"Boosteroid\"] │\n│ included windows │ [] │\n│ cloud sync │ disabled │\n│ auto-destruct pid │ 0 │\n│ deepgram key │ not set │\n│ api auth │ enabled │\n│ encrypt secrets │ disabled │\n│ retention days │ 14 │\n│ retention mode │ media-only (keep transcripts) │\n├────────────────────────┼────────────────────────────────────┤\n│ languages │ │\n│ │ all languages │\n├────────────────────────┼────────────────────────────────────┤\n│ monitors │ │\n│ │ id: 1 │\n│ │ id: 2 │\n├────────────────────────┼────────────────────────────────────┤\n│ audio devices │ │\n│ │ disabled │\n└────────────────────────┴────────────────────────────────────┘\nyou are using local processing. all your data stays on your computer.\n\nwarning: telemetry is enabled. only error-level data will be sent.\nto disable, use the --disable-telemetry flag.\n\ncheck latest changes here: https://github.com/screenpipe/screenpipe/releases\n2026-05-08T09:25:45.881961Z INFO screenpipe: starting UI event capture\n2026-05-08T09:25:45.888762Z INFO screenpipe_engine::power::manager: initial power profile: Performance (on_ac=true, battery=Some(100))\n2026-05-08T09:25:45.891286Z WARN screenpipe: pi agent install failed: bun not found — install from https://bun.sh\n2026-05-08T09:25:45.896583Z INFO screenpipe_engine::ui_recorder: Starting UI event capture\n2026-05-08T09:25:45.913159Z INFO screenpipe_engine::ui_recorder: UI recording session started: 03da4156-9bc1-4c59-86f8-3b937ccacca2\n2026-05-08T09:25:45.913483Z INFO screenpipe_engine::calendar_speaker_id: speaker identification: started (user_name=<not set>)\n2026-05-08T09:25:45.913512Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warming from DB (2026-05-07 06:25:45.913511 UTC to 2026-05-08 06:25:45.913511 UTC)\n2026-05-08T09:25:45.914574Z INFO screenpipe_engine::meeting_detector: meeting v2: detection loop started (base_interval=5s, profiles=12)\n2026-05-08T09:25:45.923208Z INFO screenpipe_engine::server: Server listening on 127.0.0.1:3030\n2026-05-08T09:25:45.927056Z INFO screenpipe_connect::mdns: mdns: advertising screenpipe on port 3030\n2026-05-08T09:25:46.310992Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 1 (1440x900)\n2026-05-08T09:25:46.311039Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 1 (device: monitor_1)\n2026-05-08T09:25:46.311076Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 1 (device: monitor_1)\n2026-05-08T09:25:46.472936Z INFO screenpipe_engine::vision_manager::manager: Starting vision recording for monitor 2 (3008x1253)\n2026-05-08T09:25:46.472968Z INFO screenpipe_engine::vision_manager::manager: Starting event-driven capture for monitor 2 (device: monitor_2)\n2026-05-08T09:25:46.472981Z INFO screenpipe_engine::vision_manager::manager: VisionManager started with 2/2 monitor(s)\n2026-05-08T09:25:46.472989Z INFO screenpipe_engine::vision_manager::monitor_watcher: Starting monitor watcher (event-driven via CGDisplayRegisterReconfigurationCallback, 60s backstop poll)\n2026-05-08T09:25:46.473017Z INFO screenpipe_engine::event_driven_capture: event-driven capture started for monitor 2 (device: monitor_2)\n2026-05-08T09:25:47.579143Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T09:25:47.807876Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T09:25:49.233996Z WARN sqlx::query: summary=\"SELECT f.id, f.timestamp, f.offset_index, …\" db.statement=\"\\n\\nSELECT\\n f.id,\\n f.timestamp,\\n f.offset_index,\\n COALESCE(\\n SUBSTR(f.full_text, 1, 200),\\n SUBSTR(f.accessibility_text, 1, 200),\\n (\\n SELECT\\n SUBSTR(ot.text, 1, 200)\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as text,\\n COALESCE(\\n f.app_name,\\n (\\n SELECT\\n ot.app_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as app_name,\\n COALESCE(\\n f.window_name,\\n (\\n SELECT\\n ot.window_name\\n FROM\\n ocr_text ot\\n WHERE\\n ot.frame_id = f.id\\n LIMIT\\n 1\\n )\\n ) as window_name,\\n COALESCE(vc.device_name, f.device_name) as screen_device,\\n COALESCE(vc.file_path, f.snapshot_path) as video_path,\\n COALESCE(vc.fps, 0.033) as chunk_fps,\\n f.browser_url,\\n f.machine_id\\nFROM\\n frames f\\n LEFT JOIN video_chunks vc ON f.video_chunk_id = vc.id\\nWHERE\\n f.timestamp >= ?1\\n AND f.timestamp <= ?2\\n AND COALESCE(vc.file_path, f.snapshot_path, '') NOT LIKE 'cloud://%'\\nORDER BY\\n f.timestamp DESC,\\n f.offset_index DESC\\nLIMIT\\n 10000\\n\" rows_affected=0 rows_returned=6262 elapsed=3.319831958s\n2026-05-08T09:25:49.259779Z INFO screenpipe_engine::hot_frame_cache: hot_frame_cache: warmed with 6262 frame entries, coverage from 2026-05-07 06:25:45.913511 UTC\n2026-05-08T09:25:49.287128Z WARN sqlx::query: summary=\"PRAGMA wal_checkpoint(TRUNCATE)\" db.statement=\"\" rows_affected=1 rows_returned=1 elapsed=3.372462875s\n2026-05-08T09:25:49.298656Z WARN sqlx::query: summary=\"BEGIN IMMEDIATE\" db.statement=\"\" rows_affected=0 rows_returned=0 elapsed=2.291237167s\n2026-05-08T09:25:49.308025Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 1: frame_id=6417, dur=1635ms\n2026-05-08T09:25:49.316412Z INFO screenpipe_engine::event_driven_capture: startup capture for monitor 2: frame_id=6418, dur=1452ms\n2026-05-08T09:25:53.067387Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1292138115173956966, trigger=visual_change)\n2026-05-08T09:26:03.550801Z WARN screenpipe_a11y::tree::macos_lines: lines: AXUIElementCopyParameterizedAttributeValue(AXLineForIndex) failed status=os::Status { raw: -25212, fcc: \"....\", help: \"https://www.osstatus.com?search=-25212\" } — first failure (further failures suppressed); search highlights will fall back to paragraph bbox on this app\n2026-05-08T09:26:46.180906Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 4 eligible frames\n2026-05-08T09:26:46.524607Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 1 frames, 0.1MB → 0.1MB (0.9x), 1 JPEGs deleted\n2026-05-08T09:26:46.923032Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 1 frames, 0.2MB → 0.2MB (0.8x), 1 JPEGs deleted\n2026-05-08T09:28:41.550335Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:28:59.126718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:28:59.305470Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:00.089887Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:00.462881Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:03.317651Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:03.473148Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:10.550484Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:10.930599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-7426953576438581283, trigger=click)\n2026-05-08T09:29:40.477951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:29:40.623647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:29:55.685106Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:27.852727Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:28.074599Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:39.391415Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:39.580155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:42.593858Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2326274690767393779, trigger=click)\n2026-05-08T09:30:42.780703Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2326274690767393779, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T09:31:03.663088Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1118401968181291277, trigger=click)\n2026-05-08T09:31:13.336256Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:16.300718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:19.862155Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:20.023592Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:31.559009Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:31.722269Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:42.709962Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:31:47.186649Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 2 eligible frames\n2026-05-08T09:31:54.123656Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1118401968181291277, trigger=click)\n2026-05-08T09:31:54.497342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1118401968181291277, trigger=click)\n2026-05-08T09:32:04.168621Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:32:04.407757Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T09:32:38.034056Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:40.275982Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:45.192285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:45.469912Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:46.259114Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:46.446908Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:32:51.411943Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=4055727158540721505, trigger=click)\n2026-05-08T09:33:05.930232Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:06.060313Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:07.483162Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:07.683843Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:10.871126Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:11.052797Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:11.746749Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:11.927251Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:15.060268Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=visual_change)\n2026-05-08T09:33:21.074673Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=visual_change)\n2026-05-08T09:33:21.530338Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:23.852887Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=visual_change)\n2026-05-08T09:33:44.459060Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:44.638920Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:45.598747Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=1544692304979667111, trigger=click)\n2026-05-08T09:33:50.861178Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:51.057271Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:51.739888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:54.476956Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:54.648342Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:55.662035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:33:55.867287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:34:12.210475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:34:12.402186Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:34:26.804614Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=visual_change)\n2026-05-08T09:34:41.958095Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=visual_change)\n2026-05-08T09:34:44.939587Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=visual_change)\n2026-05-08T09:34:47.414039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T09:35:46.200311Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:35:46.364228Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:35:50.031576Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:35:50.249582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T09:36:41.230540Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:41.413677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:44.820204Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:45.035980Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:47.754237Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T09:36:49.283543Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 3.0MB → 1.2MB (2.5x), 10 JPEGs deleted\n2026-05-08T09:36:50.755035Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:51.069767Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:51.094760Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.2MB → 1.1MB (2.0x), 11 JPEGs deleted\n2026-05-08T09:36:55.268465Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:36:55.437350Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-3779071910462057582, trigger=click)\n2026-05-08T09:37:05.394712Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:05.551094Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:08.103873Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:08.361208Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5795911359130326036, trigger=click)\n2026-05-08T09:37:39.177609Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:37:39.328675Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:03.042687Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:04.473095Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:04.683357Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:06.224659Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:06.378357Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:07.871753Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:08.025847Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:09.033460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:09.327866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:11.337027Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:11.491353Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:13.728071Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:14.040779Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:16.504104Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:38:22.538341Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:22.728456Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:38:55.556472Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:55.711419Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:57.264840Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:38:57.539647Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:01.084205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:01.268210Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:15.271618Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:15.439734Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:39:32.758641Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n2026-05-08T09:39:35.793169Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T09:41:28.068167Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:41:31.045305Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=visual_change)\n2026-05-08T09:41:36.389986Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:41:36.561677Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1382034825841206534, trigger=click)\n2026-05-08T09:41:41.341428Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=visual_change)\n2026-05-08T09:41:51.115360Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 59 eligible frames\n2026-05-08T09:41:51.172608Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:41:51.332434Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:41:53.382444Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 8.7MB → 2.7MB (3.2x), 25 JPEGs deleted\n2026-05-08T09:41:56.048962Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 32 frames, 6.4MB → 2.8MB (2.3x), 32 JPEGs deleted\n2026-05-08T09:41:56.974629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:41:57.081674Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:01.408309Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:01.576951Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:05.650150Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:42:08.461352Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:13.504196Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:15.422832Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:15.608642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:22.013550Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:22.220620Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:30.158861Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:30.329117Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2730807366803551277, trigger=click)\n2026-05-08T09:42:36.236287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:37.625816Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:37.866373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:44.520188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:44.674683Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:45.556893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:45.896079Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:53.124042Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:54.984377Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:55.678582Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:58.707317Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:42:58.853212Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:04.132975Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:04.293225Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:05.097617Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:05.358460Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:11.374737Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:19.175331Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:19.355570Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:37.353769Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:43:53.937896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:44:00.384577Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:44:00.510160Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:44:05.272446Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:45:03.466845Z INFO screenpipe_engine::meeting_detector: meeting v2: Idle -> Confirming (app=Firefox, signals=2)\n2026-05-08T09:45:09.166576Z INFO screenpipe_engine::meeting_detector: meeting v2: Confirming -> Active (app=Firefox, signals=2, browser=true)\n2026-05-08T09:45:09.174536Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting started (id=3, app=Firefox, title=None)\n2026-05-08T09:45:09.185270Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=true, manual=false, active_id=Some(3), app=Some(\"Firefox\"), source=Some(\"ui_scan\")\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T09:45:52.983194Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:45:55.814561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:46:22.910823Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1554366943929738047, trigger=visual_change)\n2026-05-08T09:46:25.877422Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-1554366943929738047, trigger=visual_change)\n2026-05-08T09:46:50.115047Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3936769011367173450, trigger=visual_change)\n2026-05-08T09:46:56.405973Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 44 eligible frames\n2026-05-08T09:46:58.402681Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 4.9MB → 2.1MB (2.3x), 18 JPEGs deleted\n2026-05-08T09:47:02.005336Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 24 frames, 4.8MB → 1.8MB (2.6x), 24 JPEGs deleted\n2026-05-08T09:48:49.624034Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4935500254712719031, trigger=visual_change)\n2026-05-08T09:48:55.234042Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-4935500254712719031, trigger=visual_change)\n2026-05-08T09:49:31.027241Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4903930204626697518, trigger=visual_change)\n2026-05-08T09:49:33.574661Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4903930204626697518, trigger=visual_change)\n2026-05-08T09:49:40.985216Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=1479333644127595753, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T09:51:31.195866Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:51:34.187130Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:52:02.058877Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 25 eligible frames\n2026-05-08T09:52:02.895659Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.2x), 11 JPEGs deleted\n2026-05-08T09:52:05.123225Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.4MB → 1.1MB (2.2x), 12 JPEGs deleted\n2026-05-08T09:52:28.524613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:32.199020Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:34.981545Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:38.041928Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:53:53.228575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:55:34.615659Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:55:39.135543Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:55:42.100626Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T09:56:06.348421Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:56:19.778937Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:20.146987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:22.327374Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:56:22.684320Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:23.354118Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T09:56:31.130999Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:56:36.848267Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T09:57:05.138380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 61 eligible frames\n2026-05-08T09:57:08.978627Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 34 frames, 5.2MB → 2.2MB (2.3x), 34 JPEGs deleted\n2026-05-08T09:57:12.061590Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 4.7MB → 1.8MB (2.6x), 25 JPEGs deleted\n2026-05-08T09:57:20.857350Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T10:02:12.074210Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 66 eligible frames\n2026-05-08T10:02:14.591669Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 27 frames, 4.6MB → 1.6MB (2.8x), 27 JPEGs deleted\n2026-05-08T10:02:18.591453Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 37 frames, 6.9MB → 2.1MB (3.2x), 37 JPEGs deleted\n2026-05-08T10:02:38.310288Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:02:41.512754Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:02:55.427495Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:02:58.467205Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T10:05:45.153487Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:06:00.209915Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:06:06.271869Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:07:00.926117Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:07:04.535399Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:07:18.685226Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-08T10:07:20.049081Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.7MB (2.3x), 10 JPEGs deleted\n2026-05-08T10:07:21.768980Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 14 frames, 2.6MB → 0.9MB (3.0x), 14 JPEGs deleted\n2026-05-08T10:09:59.647178Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:02.691057Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:05.910137Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:18.904787Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=visual_change)\n2026-05-08T10:10:22.032045Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=680680676277418071, trigger=click)\n2026-05-08T10:10:22.364085Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=click)\n2026-05-08T10:10:34.764663Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=680680676277418071, trigger=visual_change)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T10:10:52.467119Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:01.601149Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:01.997105Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:07.533586Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:07.750007Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:09.430891Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:11:09.668098Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=3401949268335374344, trigger=click)\n2026-05-08T10:12:22.241069Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T10:12:23.316021Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.6MB (3.0x), 10 JPEGs deleted\n2026-05-08T10:12:24.302139Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.9MB → 0.3MB (6.2x), 10 JPEGs deleted\n2026-05-08T10:14:27.950899Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:14:30.953147Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:15:40.699455Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T10:15:53.068152Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:16:06.077381Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:09.164173Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:12.238475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:27.434756Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:30.598435Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2129289822966195577, trigger=visual_change)\n2026-05-08T10:16:54.602846Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=2798045893656121689, trigger=visual_change)\n2026-05-08T10:17:24.360060Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 20 eligible frames\n2026-05-08T10:17:26.451985Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.5MB → 0.7MB (2.3x), 9 JPEGs deleted\n2026-05-08T10:17:27.393539Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.7MB → 0.3MB (5.5x), 9 JPEGs deleted\n2026-05-08T10:17:35.884136Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:44.858247Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:47.791681Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:51.542202Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:53.850524Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:17:56.976902Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:18:00.189453Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:18:56.810401Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:18:58.426017Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:14.105702Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:19:15.906287Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:19:16.196966Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:19:23.138718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:50.564469Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:53.695532Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:19:59.646538Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:02.690871Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:05.544781Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:08.886578Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:11.711013Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:42.205501Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T10:20:44.945356Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:20:56.980297Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:21:00.075928Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:21:27.359488Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:21:51.375575Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:22:09.590415Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:22:27.856377Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 26 eligible frames\n2026-05-08T10:22:29.975537Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.0MB → 0.9MB (2.2x), 12 JPEGs deleted\n2026-05-08T10:22:32.193955Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 12 frames, 2.3MB → 0.8MB (2.9x), 12 JPEGs deleted\n2026-05-08T10:22:38.104118Z INFO screenpipe_engine::meeting_detector: meeting v2: Active -> Ending (no controls, app=Firefox, id=3, grace=300s)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T10:27:32.223386Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 39 eligible frames\n2026-05-08T10:27:33.963231Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 3.8MB → 1.5MB (2.5x), 22 JPEGs deleted\n2026-05-08T10:27:34.965976Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 15 frames, 2.9MB → 0.6MB (4.5x), 15 JPEGs deleted\n2026-05-08T10:27:42.003060Z INFO screenpipe_engine::meeting_detector: meeting v2: Ending -> Idle (timeout=300s, app=Firefox, id=3)\n2026-05-08T10:27:42.030942Z INFO screenpipe_engine::meeting_detector: meeting v2: meeting ended (id=3)\n2026-05-08T10:27:42.031284Z INFO screenpipe_engine::routes::meetings: meeting_status_changed: active=false, manual=false, active_id=None, app=None, source=None\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T10:32:34.993481Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 37 eligible frames\n2026-05-08T10:32:36.911427Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 18 frames, 3.0MB → 1.6MB (1.9x), 18 JPEGs deleted\n2026-05-08T10:32:38.348968Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 17 frames, 3.3MB → 0.7MB (4.5x), 17 JPEGs deleted\n2026-05-08T10:32:43.504629Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-2480865208693484334, trigger=click)\n2026-05-08T10:32:44.808086Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-2691869413603873448, trigger=visual_change)\n2026-05-08T10:32:57.344768Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-4582922036696453369, trigger=visual_change)\n2026-05-08T10:33:14.286615Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:17.397061Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:20.440236Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:23.565667Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:26.619325Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:33:44.642578Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-3825731353406066678, trigger=visual_change)\n2026-05-08T10:34:18.658764Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:34:19.570478Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:34:37.759610Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:34:46.191373Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:34:46.347571Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:35:05.447987Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:08.364141Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:20.530635Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:26.518850Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:35:42.335475Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T10:36:05.761109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:36:51.134718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:37:03.018938Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:03.131018Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:19.986446Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:20.150039Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:38.485989Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 49 eligible frames\n2026-05-08T10:37:40.088773Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 25 frames, 2.5MB → 0.5MB (5.3x), 25 JPEGs deleted\n2026-05-08T10:37:41.449341Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 22 frames, 4.5MB → 0.7MB (6.1x), 22 JPEGs deleted\n2026-05-08T10:37:53.686403Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:53.911534Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:55.547504Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:37:55.698502Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:40:03.803000Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:40:05.329370Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:40:12.277953Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:40:30.238530Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n2026-05-08T10:40:33.253643Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n2026-05-08T10:40:39.446188Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T10:42:41.487064Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 43 eligible frames\n2026-05-08T10:42:43.685646Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 21 frames, 3.2MB → 0.8MB (3.8x), 21 JPEGs deleted\n2026-05-08T10:42:45.090380Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 20 frames, 4.1MB → 0.4MB (9.8x), 20 JPEGs deleted\n2026-05-08T10:44:51.948235Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=5909161999094906183, trigger=visual_change)\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T10:47:45.477420Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 29 eligible frames\n2026-05-08T10:47:46.908374Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 16 frames, 2.6MB → 1.0MB (2.4x), 16 JPEGs deleted\n2026-05-08T10:47:47.889915Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.2MB → 0.7MB (3.1x), 11 JPEGs deleted\n2026-05-08T10:48:44.989826Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:45.457011Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:46.241871Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:52.767770Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:48:52.931983Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:49:13.334842Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:49:35.877896Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:49:40.287642Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:49:40.567109Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:18.247561Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:18.445354Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:38.564808Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T10:50:38.721104Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T10:52:14.939893Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T10:52:47.921981Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 24 eligible frames\n2026-05-08T10:52:48.773277Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 1.6MB → 0.2MB (7.2x), 11 JPEGs deleted\n2026-05-08T10:52:49.740827Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 11 frames, 2.2MB → 0.6MB (3.5x), 11 JPEGs deleted\n\n tip: wire screenpipe into claude with one command:\n claude mcp add screenpipe -- npx -y screenpipe-mcp\n then ask claude to build a pipe that tracks who you are, your todos, and how you spend your time from your screen activity\n\n2026-05-08T10:57:49.816978Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 21 eligible frames\n2026-05-08T10:57:50.799387Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T10:57:51.791418Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.6MB (3.0x), 9 JPEGs deleted\n\n tip: install a starter bundle of pipes:\n screenpipe install https://screenpi.pe/start.json\n\n2026-05-08T11:02:26.291891Z INFO screenpipe_engine::sleep_monitor: Screen locked (CGSession safety-net poll)\n2026-05-08T11:02:40.815903Z INFO sck_rs::stream_manager: recreating stream for display 1 (resolution change)\n2026-05-08T11:02:51.816734Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T11:02:52.570373Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.2MB → 0.2MB (5.3x), 8 JPEGs deleted\n2026-05-08T11:02:53.516401Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.8MB → 0.6MB (2.8x), 9 JPEGs deleted\n\n tip: sign in for higher AI quotas + cloud sync:\n screenpipe login\n\n2026-05-08T11:07:53.805294Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 22 eligible frames\n2026-05-08T11:07:54.570465Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.5MB → 0.2MB (6.6x), 10 JPEGs deleted\n2026-05-08T11:07:55.385733Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 10 frames, 1.7MB → 0.3MB (6.2x), 10 JPEGs deleted\n\n tip: get the screenpipe desktop app for the full experience\n https://screenpi.pe\n\n2026-05-08T11:11:26.940944Z INFO screenpipe_engine::sleep_monitor: Screen unlocked (CGSession safety-net poll)\n2026-05-08T11:11:26.961878Z INFO screenpipe_engine::event_driven_capture: invalidating persistent streams after unlock/wake for monitor 2\n2026-05-08T11:11:27.383887Z INFO sck_rs::stream_manager: stopped 1 persistent stream(s)\n2026-05-08T11:11:28.192185Z INFO sck_rs::stream_manager: persistent SCK stream started for display 1 (1440x900, 2fps, 2 excluded)\n2026-05-08T11:11:28.644917Z INFO sck_rs::stream_manager: persistent SCK stream started for display 2 (3008x1253, 2fps, 2 excluded)\n2026-05-08T11:11:37.769445Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:38.124839Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:48.451041Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:48.668718Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)\n2026-05-08T11:11:57.515343Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T11:12:06.448613Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)\n2026-05-08T11:12:30.657285Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-988033380551830529, trigger=click)\n2026-05-08T11:12:31.365542Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-988033380551830529, trigger=click)\n2026-05-08T11:12:31.545510Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-988033380551830529, trigger=click)\n2026-05-08T11:12:55.538669Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: found 19 eligible frames\n2026-05-08T11:12:56.361298Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 9 frames, 1.3MB → 0.2MB (5.9x), 9 JPEGs deleted\n2026-05-08T11:12:57.108963Z INFO screenpipe_engine::snapshot_compaction: snapshot compaction: 8 frames, 1.4MB → 0.3MB (5.1x), 8 JPEGs deleted\n2026-05-08T11:13:00.158739Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5913295812195877774, trigger=visual_change)\n2026-05-08T11:13:05.550195Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:13:05.651938Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:13:10.744168Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:13:10.819972Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5913295812195877774, trigger=click)\n2026-05-08T11:14:12.779888Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=6316162581802160030, trigger=click)","is_focused":true},{"role":"AXRadioButton","text":"DOCKER","depth":2,"bounds":{"left":0.27027926,"top":1.0,"width":0.0787899,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.27227393,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"DEV (-zsh)","depth":2,"bounds":{"left":0.34906915,"top":1.0,"width":0.0787899,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.35106382,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"APP (-zsh)","depth":2,"bounds":{"left":0.42785904,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.42985374,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.5064827,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.5084774,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"screenpipe\"","depth":2,"bounds":{"left":0.5851064,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.58710104,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXRadioButton","text":"-zsh","depth":2,"bounds":{"left":0.66373,"top":1.0,"width":0.07862367,"height":-0.042298436},"on_screen":true,"role_description":"radio button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXButton","text":"Close Tab","depth":3,"bounds":{"left":0.66572475,"top":1.0,"width":0.005319149,"height":-0.04549086},"on_screen":true,"role_description":"button","is_enabled":false,"is_focused":false,"is_selected":false,"is_expanded":false},{"role":"AXStaticText","text":"⌥⌘1","depth":1,"bounds":{"left":0.7287234,"top":1.0,"width":0.01861702,"height":-0.023144484},"on_screen":true,"automation_id":"_NS:8","role_description":"text"},{"role":"AXStaticText","text":"screenpipe\"","depth":1,"bounds":{"left":0.49634308,"top":1.0,"width":0.027925532,"height":-0.02394259},"on_screen":true,"role_description":"text"}]...
|
-3103914630047576232
|
3220540024011195771
|
click
|
accessibility
|
NULL
|
2026-05-07T19:49:57.586646Z INFO screenpipe_engin 2026-05-07T19:49:57.586646Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:49:58.160394Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:49:58.333248Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:00.653111Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:00.788775Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:01.757003Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:01.850289Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 1 (hash=-5837861084334909305, trigger=click)
2026-05-07T19:50:09.824461Z INFO screenpipe_engine::event_driven_capture: content dedup: skipping capture for monitor 2 (hash=-5837861084334909305, trigger=visual_change)
tip: get the screenpipe desktop app for the full experience
[URL_WITH_CREDENTIALS] record --disable-audio --ignored-windows "Boosteroid"
lukas@Lukas-Kovaliks-MacBook-Pro-Jiminny ~ $ sp-start
detected hardware tier: Mid
warning: parakeet is not supported on this platform, using whisper-tiny instead
2026-05-08T09:25:44.404966Z INFO screenpipe_eng...
|
NULL
|
NULL
|
NULL
|
NULL
|